Qt C++ QComboBox: 在框最前面添加图标 (非Item中)
要在QComboBox框的最前面增加图标,可以使用QComboBox的setStyleSheet()方法来设置样式表,通过设置样式表的background-image属性来添加图标。\n\n以下是一个示例代码,演示如何在QComboBox框的最前面增加图标:\n\ncpp\n// 创建QComboBox对象\nQComboBox* comboBox = new QComboBox(this);\n// 设置QComboBox的大小和位置\ncomboBox->setGeometry(10, 10, 200, 30);\n\n// 设置图标的文件路径\nQString iconPath = \"path/to/icon.png\";\n// 创建QPixmap对象,加载图标文件\nQPixmap pixmap(iconPath);\n// 缩放图标,使其适应QComboBox的大小\nQPixmap scaledPixmap = pixmap.scaled(20, 20, Qt::KeepAspectRatio);\n\n// 设置QComboBox的样式表\ncomboBox->setStyleSheet(QString(\"QComboBox { padding-left: 20px; \"\n \"background-image: url(%1); \"\n \"background-repeat: no-repeat; \"\n \"background-position: left center; \"\n \"background-origin: content; }\")\n .arg(iconPath));\n\n// 添加QComboBox的选项\ncomboBox->addItem(\"Option 1\");\ncomboBox->addItem(\"Option 2\");\ncomboBox->addItem(\"Option 3\");\n\n\n在上述代码中,首先创建一个QComboBox对象comboBox,并设置其大小和位置。然后,通过设置QComboBox的样式表,将图标文件设置为背景图片,并调整样式表中的相关属性,以使图标在QComboBox框的最前面显示。最后,通过addItem()方法向QComboBox中添加选项。\n\n请注意,上述代码中的"path/to/icon.png"应替换为实际的图标文件路径。另外,根据需要,可以调整样式表中的其他属性来适应特定的需求。
原文地址: https://www.cveoy.top/t/topic/pTJY 著作权归作者所有。请勿转载和采集!