写在前面
学习QT有几个月了,从起初的ui界面拖拖拽拽演化到用代码制作界面。
可是发现自己在设置样式表的时候,一个按钮的三态效果,字符串实在是太长了,很影响码容。
于是写了一个宏去简化代码,让代码看起来整洁了许多,分享给大家。有可以改进的地方,不吝赐教。
内容简介
Qt Creator : 4.0.2
Qt : 5.0.2
学习源码
优化前
ui->exitButton->setText("");
ui->exitButton->setStyleSheet(
QString("QPushButton{border-image: url(:/base/exit)}"
"QPushButton:pressed{border-image: url(:/base/exit_pressed)}"
"QPushButton:houver{border-image: url(:/base/exit_houver)}");
优化后
// 退出按钮
ui->exitButton->setText("");
ui->exitButton->setStyleSheet(
QString(BUTTON_STYLESHEET(QPushButton,:/base/exit)));
#define BUTTON_STYLESHEET(class_name,image_url) (#class_name"{border-image: url("#image_url")}" \
#class_name":pressed{border-image: url("#image_url"_pressed)}")
相关文章:C/C++ "#"与"##"的作用与用法 【点击前往】
结后语
利用宏的不做类型检查和预编译的特性,不会影响运行效率。
转载请注明原文地址: https://ju.6miu.com/read-678562.html