- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想设计一个新的 QIcon 并希望它看起来像一个固定的文本,周围有一个圆角矩形
.-----.
| Phy |
`-----´
当在最终应用了缩放变换的 QPainter 上绘制时,图标应该在没有“像素 block ”效果的情况下缩放(例如,当我绘制到一个小部件中时,该小部件是 QGraphicsView 的一部分,并在其上应用了缩放场景)。
因此,我很难知道应该如何绘制我的 QIcon。如果我按照下面的方式来做,我将绘制一个始终具有固定数量像素的 QPixmap,从而在比例足够大时不可避免地引入像素 block 效应
void MyWidget::drawIcon(QPainter *painter, QPoint pos) {
QPixmap pixmap = icon.pixmap(QSize(22, 22),
isEnabled() ? QIcon::Normal
: QIcon::Disabled,
isChecked() ? QIcon::On
: QIcon::Off);
painter->drawPixmap(pos, pixmap);
}
我正在寻找的是一种类似于 QFont with drawText
的工作方式。无论我的规模有多大,当我绘制字体时,它总是看起来很清晰,而且我无法检测到单个像素。
我想象我可以告诉 QPainter
将我的图标绘制到给定的像素矩形中,然后 QPainter
变换矩形自身,然后再让我的QIconEngine::paint
将项目渲染成可能更大的矩形或像素图。但我看不出我怎么能做这样的事情。
我是不是太蠢了,没有看到明显的解决方案?
最佳答案
我确实被彻底抛弃了。我可以只使用 QIcon::paint
并将矩形传递给它。它会正确地将请求委托(delegate)给图标引擎。
关于c++ - 使用 QPainter 绘制可缩放的 QIcon,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460737/
我有这个代码; void FileBrowser::setItemIcon(QStandardItem *item) { // check whether its a file or not
我想在我的 QComboBox 中的条目上包含一个“删除”图标,但我无法捕获鼠标按下事件。我试图在组合框中捕获它,并且尝试重新实现 QIcon 类以在那里捕获鼠标按下。没有骰子。有人知道怎么做吗? -
我有一个自定义文件格式,用于存储一些图像。我在程序运行期间将这些图像加载到内存中。图像以二进制格式加载(即它们在磁盘上的显示方式相同)。我知道图像的格式(几乎都是 jpeg)。问题是我不知道宽度/高度
我尝试了多种方法在 QTableWidget 单元格中显示 QIcon,但我不确定为什么它不起作用。我有一个按钮,按下时会在表格中添加一行。这是代码... void MainWindow::press
我在使用 QIcon(带有 MSVC 2008 的 Qt 4.8.1)时遇到了一些内存泄漏。 这种情况发生在简单的 QAction(如菜单条目,甚至是由 Qt Designer 自动生成的条目)或容器
我有一个带有自定义主题的应用程序,并且禁用的图标呈亮灰色。我想更改禁用的图标色调颜色。 现在我知道有这样的可能性: QTableWidgetItem *name = new QTableWidgetI
我正在尝试扩大 QIcon,但它不起作用。 class Example(QMainWindow): def __init__(self): super().__init__()
目标 我希望用户能够单击 QIcon 来执行某些操作。也就是说,我想将 QIcon 内的鼠标单击事件连接到插槽。 我尝试过的 在我的示例(如下)中,我使用 TreeView ,当用户单击其中一个图标时
我正在开发一个需要 的应用程序显示与不同文件类型关联的图标 . 例如对于 .doc 扩展,我需要它才能显示 Microsoft Word 图标 . 问题: 如何使用 QT sdk 从系统中获取 QIc
openFile = QtGui.QAction(QtGui.QIcon('Black.png'), 'Open', self) 添加 Action 后运行模块时,单击文件时,打开的 Action 没
正如 docs 中所写我想从当前代码编辑 setThemeSearchPaths() : if __name__ == "__main__": app = QtGui.QApplication
我尝试使用派生自 QSettings 的类来存储 QIcon,如下所示: setValue("fancy_icon", QIcon::fromTheme("document-new")); 但是我有一
我有一个额外的窗口,里面有一个文本编辑 + qicon(我称之为 float 编辑)。 我有 2 个 qicons - 用于通常的 DPI(16 x 16 图标),它是 2x 版本(32 x 32)。
我有一个 play button 的 png 格式图像我在其中存储为 embedded resource在我的申请中。 play.png 我已经为 Normal 和 Activ
我正在学习如何使用 Qt 进行 C++ 编程。当我单击一个按钮并且与该按钮相关的矩阵上的位置等于-1时,我想显示这张图像,我还想清除同一个按钮上的文本,我的代码到目前为止部分是: if(Tabulei
我已经为 GUI 菜单创建 QT 自定义设计器小部件工作了一段时间。这个想法是您只需将它拖到设计器中,选择您想要的帧数、每帧按钮的数量等,它就会为您生成一切并调整其大小。 小部件的结构方式有一些属性可
我正在使用 QTableView 和 QSqlTableModel 来显示来自 sqlite DB 的数据。在数据库(和模型)中,有一列包含包含路径的字段,即:“/home/foo/bar.txt”或
我想要一个文本左对齐、图标右对齐的表格单元格。 但是现在,我让图标和文本都左对齐,这是我尝试过的 QtTableWidgetItem * item = new QtTableWidgetItem("p
假设我做了这样的事情: QIcon myIcon(":/resources/icon.ico"); 我以后如何确定该图标的路径,例如 QString path = myIcon.getPath();
我想设计一个新的 QIcon 并希望它看起来像一个固定的文本,周围有一个圆角矩形 .-----. | Phy | `-----´ 当在最终应用了缩放变换的 QPainter 上绘制时,图标应该在没有“
我是一名优秀的程序员,十分优秀!