Böyle, stil sayfalarını kullanarak bir QToolButton en simgelerini ayarlamak istiyorum:QtoolButton'un simgeleri stil sayfasını kullanarak nasıl ayarlanır?
#include <QToolButton>
#include <QApplication>
QString FormStyleSheetString(const QString & name)
{
const QString thisItemStyle("QToolButton:enabled { image: url(" + name + "_normal.png); } "
"QToolButton:pressed { image: url(" + name + "_pressed.png); } "
"QToolButton:disabled { image: url(" + name + "_disabled.png); } "
);
return thisItemStyle;
}
int main(int argc, char * argv[])
{
QApplication qapp(argc,argv);
QToolButton button;
button.setStyleSheet(FormStyleSheetString("button"));
button.setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
button.setIconSize(QSize(200,200));
button.setText("some thing...");
button.show();
return qapp.exec();
}
Ben bunu böyle derlenmiş:
g++ -O3 -std=c++0x -Wall -Wextra -pedantic test.cpp -lQtCore -lQtGui -I/usr/include/Qt/ -I/usr/include/QtCore/ -I/usr/include/QtGui/
Maalesef yukarıda çalışmıyor (simge değil olarak gösterilmiştir).
setIcon kullanırsam, simge doğru şekilde görüntülenir.
Peki, ne yapıyorum yanlış? Stil sayfasını kullanarak düğmenin simgesi nasıl ayarlanır? Kullandığım
görüntülerdir:
PS I benzer bir soru here sorulan Not al, ama metin ayarlandıktan sonra cevap çalışmıyor (simge bütün ezilmiş olduğu ve metin simgenin altında değil).
DÜZENLEME 1: (Kamil Klimek önerdiği gibi) ben de bu işlevi çalıştı:
QString FormStyleSheetString(const QString & name)
{
const QString thisItemStyle("QToolButton { qproperty-icon: url(" + name + "_normal.png); }; "
"QToolButton:pressed { qproperty-icon: url(" + name + "_pressed.png); }; "
"QToolButton:hover { qproperty-icon: url(" + name + "_disabled.png); }; "
);
return thisItemStyle;
}
ama o da işe yaramadı. Düğmeye basmak veya gezinmek, simgeyi değiştirmez.
Bir görüntüyü simge değil ayarlayabilirsiniz. qproperty-icon'u deneyin: url() –
@KamilKlimek Bunu denedim, ama işe yaramadı. Normal görüntüyü ayarladı, ancak basılmadı ve durmadı. Bence bu hatanın nedeni: https://bugreports.qt.nokia.com/browse/QTBUG-2982?page=com.atlassian.streams.streams-jira-plugin:activity-stream-issue-tab –
görüntü veya arka plan olarak ayarlamanız gerek! CSS ile boyutu ayarlamanız gerekecek. –