Qt界面美化 QSS
2013-06-12 23:10
447 查看
目前发现在Qt-Design中右击控件,可以选择Change StyleSheet
------------------------以下总结不太对
刚接触Qt,发现Qt Design无法对每个控件进行颜色风格设置。正在纳闷如此受欢迎的开发工具,怎么会没有这种,Delphi,VB,VC,C#都具备的基本功能呢?
后来在CSDN上才知道,Qt已经走在这些工具的最前方了,把界面已经独立出来和web编程一样。web有CSS专门美化工作。而Qt也有QSS进行美化设计。完全可以不影响程序开发。而且可以直接调用网上经典的界面代码。
Qt思想确实是先进不少啊。
目前没有精力研究Qt美化界面的问题。先了解一下放在这儿。
一些QSS的例子
QT皮肤(QSS)编程
qt样式qss应用
QT皮肤(QSS)编程
skin.qss中,写上QPushButton { color: red };
Cpp代码
![](http://qimo601.iteye.com/images/icon_star.png)
#include <QApplication>
#include <QPushButton>
#include <QApplication>
#include <QFile>
#include <QStyleFactory>
#include <QTextStream>
bool setSkin(QApplication* const app, QString const &skinFile)
{
QFile file(skinFile);
if (QFile::exists(skinFile) && file.open(QIODevice::ReadOnly))
{
QApplication::setStyle(QStyleFactory::create("Windows"));
QString strTemp;
QTextStream in(&file);
while (!in.atEnd())
{
strTemp.append(in.readLine());
}
file.close();
app->setStyleSheet(strTemp);
}
else
{
#ifdef Q_WS_MAC
qDebug("%s: %s: File does not exist %s... setting mac style...",
__FILE__, __FUNCTION__, qPrintable(skinFile));
app->setStyle(new QMacStyle());
return true;
#else
qDebug("%s: %s: File does not exist or failed to open %s",
__FILE__, __FUNCTION__, qPrintable(skinFile));
return false;
#endif
}
return true;
}
int main(int argc, char *argv[])
{
//加载应用程序实例
QApplication app(argc, argv);
//加载主窗口
QWidget *widget = new QWidget();
widget->setFixedSize(300, 300);
widget->move(0, 0);
//加载PushButton
QPushButton *button = new QPushButton("button", widget);
button->setFixedSize(100, 100);
button->move(100, 100);
<strong><span style="color: #800000;">
//加载应用皮肤
setSkin(&app ,"skin.qss");</span></strong>
//显示主窗口
widget->showNormal();
//循环
return app.exec();
}
------------------------以下总结不太对
刚接触Qt,发现Qt Design无法对每个控件进行颜色风格设置。正在纳闷如此受欢迎的开发工具,怎么会没有这种,Delphi,VB,VC,C#都具备的基本功能呢?
后来在CSDN上才知道,Qt已经走在这些工具的最前方了,把界面已经独立出来和web编程一样。web有CSS专门美化工作。而Qt也有QSS进行美化设计。完全可以不影响程序开发。而且可以直接调用网上经典的界面代码。
Qt思想确实是先进不少啊。
目前没有精力研究Qt美化界面的问题。先了解一下放在这儿。
一些QSS的例子
QT皮肤(QSS)编程
qt样式qss应用
QT皮肤(QSS)编程
skin.qss中,写上QPushButton { color: red };
Cpp代码
![](http://qimo601.iteye.com/images/icon_star.png)
#include <QApplication>
#include <QPushButton>
#include <QApplication>
#include <QFile>
#include <QStyleFactory>
#include <QTextStream>
bool setSkin(QApplication* const app, QString const &skinFile)
{
QFile file(skinFile);
if (QFile::exists(skinFile) && file.open(QIODevice::ReadOnly))
{
QApplication::setStyle(QStyleFactory::create("Windows"));
QString strTemp;
QTextStream in(&file);
while (!in.atEnd())
{
strTemp.append(in.readLine());
}
file.close();
app->setStyleSheet(strTemp);
}
else
{
#ifdef Q_WS_MAC
qDebug("%s: %s: File does not exist %s... setting mac style...",
__FILE__, __FUNCTION__, qPrintable(skinFile));
app->setStyle(new QMacStyle());
return true;
#else
qDebug("%s: %s: File does not exist or failed to open %s",
__FILE__, __FUNCTION__, qPrintable(skinFile));
return false;
#endif
}
return true;
}
int main(int argc, char *argv[])
{
//加载应用程序实例
QApplication app(argc, argv);
//加载主窗口
QWidget *widget = new QWidget();
widget->setFixedSize(300, 300);
widget->move(0, 0);
//加载PushButton
QPushButton *button = new QPushButton("button", widget);
button->setFixedSize(100, 100);
button->move(100, 100);
<strong><span style="color: #800000;">
//加载应用皮肤
setSkin(&app ,"skin.qss");</span></strong>
//显示主窗口
widget->showNormal();
//循环
return app.exec();
}
相关文章推荐
- Qt界面美化 QSS
- Qt界面美化之qss应用
- 《Qt》part 8 QSS+按键菜单——界面美化3
- Qt界面美化 QSS
- 《Qt》part 6 QSS Qt样式表——界面美化1
- Qt之界面美化输入框(使用QSS确实非同凡响)
- 《Qt》part 7 QSS参考样式表——界面美化2
- QT 界面美化之 QStyle 应用
- QSS与Qt主程序做到界面分离
- 【Qt界面个性化】大杀器——qss
- Qt Creator中使用qss对界面美化没有作用(效果)的问题
- 【Qt编程】基于Qt的词典开发系列<六>--界面美化设计
- Qt QScrollBar qss 美化样例
- Qt系统对话框中文化及应用程序实现重启及使用QSS样式表文件及使用程序启动界面
- QT界面美化
- 【Qt编程】基于Qt的词典开发系列<六>--界面美化设计
- 用Qt写软件系列三:一个简单的系统工具之界面美化
- [Qt] 界面美化 [2013-06-17更新]
- 自学QT之QSS皮肤美化教程
- Qt 界面美化