Qt小技巧

下面写的都是我自己在工作遇到的一些小问题,我总结下来了,希望对你会有用,以后都会有更新。

1、使按钮移动按下有凹陷效果

(1) 使用图片
“:/res/Resources/buttom/search_normal.png”是已添加到资源中的资源路径,你也可以使用绝对路径,但还是推荐使用资源路径;你可以自己用p图工具p三张图,一张为正常状态的,一张为鼠标移动到按钮上的,颜色相对于第一张深一些,最后一张为按下状态时的,颜色相对于第二张更深一些,个人觉得这样效果最好

ui.pushButton_5->setFixedSize(19,19);
    ui.pushButton_5->setStyleSheet("QPushButton{border-image: url(:/res/Resources/buttom/search_normal.png);}"
            "QPushButton:hover{border-image: url(:/res/Resources/buttom/search_click.png);}"
            "QPushButton:pressed{border-image:     url(:/res/Resources/buttom/search_click.png);}");

效果如下:
正常
这里写图片描述
这里我移动和按下使用的是一张图
这里写图片描述

(2) 不使用图片

QString qstr_border_normal = "QPushButton{background-color: rgba(0,0,0,0);border: 1px solid rgb(135,135,135);color: rgb(255, 255, 255);}"
                                 "QPushButton:hover{background-color: rgb(255, 192, 0);color: rgb(255, 255, 255);}"
                                 "QPushButton:pressed{background-color: rgb(255, 192, 0);color: rgb(0, 0, 0);}";
    ui.m_pushBtnHomePage->setStyleSheet(qstr_border_normal);

效果如下:
正常
这里写图片描述
移动
这里写图片描述
按下
这里写图片描述

2、如何将QCalendarWidget改为英文显示

ui.calendarWidget->setLocale(QLocale::English);

3 、VS2010中QString转char*,支持中英文

char pFilePath[512] = {0};
strcpy(pFilePath,qstrFileName.toLocal8Bit().data());

4、VS2010中使用Qt信号槽,信号槽总是连接不上

(1)我的是利用SVN合并版本的时候,修改了工程文件,没有把头文件加进来,导致依赖于头文件生成的moc文件生成和更新不了,导致信号槽连接失效;解决的办法就是,将头文件重新添加,删除该头文件对应的moc文件,再编译即可;

(2)有可能是因为信号槽的参数不一致;

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值