qt qss设置动态效果

9 篇文章 0 订阅

:checked    button部件被选中
:disabled    部件被禁用
:enabled    部件被启用
:focus    部件获得焦点
:hover    鼠标位于部件上
:indeterminate    checkbox或radiobutton被部分选中
:off    部件可以切换,且处于off状态
:on    部件可以切换,且处于on状态
:pressed    部件被鼠标按下
:unchecked    button部件未被选中

一、普通动态效果,以QPushButton按钮举例

分成三个部分

1.原状态

2.鼠标悬在控件上 hover

3.鼠标按下 press

4.无2,3操作,则回到1状态

/*close_X,右上角关闭按钮*/
//原状态
//QPushButton#closeButton_2,//如果有多个按钮同设置
QPushButton#closeButton{
    background-image : url(:/image/img/close.svg); //背景图
    background-color: transparent; //背景透明
    background-position:center;  //居中
    background-repeat: no-repeat; //不重复,只一个图片
    border:none;  //无边框
}

//鼠标悬浮在按钮上
QPushButton#closeButton:hover{
    //如果要动态改变图片
    //background-image : url(:/image/img/close_2.svg); 
    background-color:#E81123;  //关闭按钮悬浮红色
    border: none;
}

//鼠标按下
QPushButton#closeButton:pressed{
    background-color:#F1707A;   //关闭按钮按下红色
    border: none;
}

 

 

QTQt)是一种跨平台的C++应用程序框架和SDK,常用于创建图形用户界面(GUI)应用。QSSQt Style Sheets)是Qt用于样式定制的一种语言,它允许开发者在运行动态地改变UI元素的外观。如果你想在Qt预览qss效果,通常的做法是: 1. **编写样式表**:首先,在`.qss`文件定义样式规则,比如修改按钮的颜色、字体等。 ```css QPushButton { background-color: #4CAF50; /* 绿色背景 */ color: white; border: none; padding: 10px 20px; font-size: 16px; } ``` 2. **关联样式表**:在Qt项目的资源文件(`.ui`或`.pro`),将`.qss`文件与你的窗口或组件关联起来。例如,在`.pro`文件添加: ```pro FORMS_DIR = forms HEADERS += myapp.h SOURCES += myapp.cpp RESOURCES += style.qss ``` 3. **加载并应用样式**:在Qt代码,你需要在适当的候读取和应用这个样式表,如窗体加载: ```cpp QApplication a(argc, argv); QFile file(QStringLiteral("style.qss")); if (file.open(QIODevice::ReadOnly)) { QTextStream stream(&file); QString sheet = stream.readAll(); qApp->setStyleSheet(sheet); } MyWidget *myWidget = new MyWidget(); myWidget->show(); return a.exec(); ``` 4. **实预览**:虽然无法直接在代码预览整个UI的效果,但你可以通过上述设置在运行更改样式,然后观察UI元素的变化。如果需要查看精确的效果,可以使用Qt Designer工具设计界面,并在编辑模式下尝试更改样式,设计师本身也支持实预览。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值