LINUX.ORG.RU

qt4 стиль приложения


0

0

Как сделать приложение оформленное полностью в стиле Mac или каком другом стиле? В чем ниже очипка?

#include <QApplication>
#include <QPushButton>
#include <QMacStyle>

int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QApplication::setStyle(QMacStyle);
QPushButton hello("Hello world!");
hello.resize(100, 30);
hello.show();
return app.exec();
}


$ qmake-qt4 -project && qmake-qt4 && make
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -I. -o main.o main.cc
main.cc:3:22: error: QMacStyle: No such file or directory
main.cc:13:3: warning: no newline at end of file
main.cc: In function 'int main(int, char**)':
main.cc:8: error: 'QMacStyle' was not declared in this scope
make: *** [main.o] Ошибка 1

anonymous

Может быть в том, что в документации по QMacStyle написано следующее: "Warning: This style is only available on Mac OS X because it relies on the HITheme APIs"?

plumbum
()
Ответ на: комментарий от plumbum

Наверно что-то не так пишу

Не макинтошь тоже не пашет:

#include <QApplication> #include <QPushButton> // #include <QMacStyle>

int main(int argc, char *argv[]) { QApplication app(argc, argv); // QApplication::setStyle(QMacStyle); QApplication::setStyle(QMotifStyle); QPushButton hello("Hello world!"); hello.resize(100, 30); hello.show(); return app.exec(); }

$ qmake-qt4 -project && qmake-qt4 && make g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -I. -o main.o main.cc main.cc:14:3: warning: no newline at end of file main.cc: In function 'int main(int, char**)': main.cc:9: error: 'QMotifStyle' was not declared in this scope make: *** [main.o] Ошибка 1

anonymous
()
Ответ на: комментарий от anonymous

>>Наверно что-то не так пишу

конечно, потому что

1) не прочитал Assistant.
2) не включил #include <QMotifStyle>
3) неправильно вызвал метод. Нужно QApplication::setStyle(new QMotifStyle);

alex_custov ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.