• 13734阅读
  • 5回复

QPushbutton 如何取消按下效果 [复制链接]

上一主题 下一主题
离线mq123477822
 
只看楼主 倒序阅读 楼主  发表于: 2009-11-13
    如题,如何取消按钮按下时的效果
离线jiulai
只看该作者 1楼 发表于: 2009-11-13
具体点好哇?你指的是按钮外观不变?disable掉?
离线mq123477822
只看该作者 2楼 发表于: 2009-11-13
我设置了dialog的背景,在上面放了两个按钮,分别为这俩个按钮设置了QICON,是透明的PNG图片,我也将按钮的flat和焦点都去掉了,但是按下的时候按钮原来灰色的框就会出现 影响美观
离线jiulai
只看该作者 3楼 发表于: 2009-11-13
好像没发现代码里设border的。
不过,用stylesheet可以。
代码里这样:
    QPushButton *button = new QPushButton(this);
    button->setObjectName("somename");

    QFile script("style.qss");
    script.open(QIODevice::ReadOnly);
    QString style = script.readAll();
    setStyleSheet(style);
style.qss里面:
QPushButton#somename {
    border: none;
    qproperty-geometry: rect(20 80 128 91);
    background-image: url(ga.png);
}

QPushButton#button:pressed {
    background-image: url(ga.png);
}
关键是把border设为none
离线午小夜

只看该作者 4楼 发表于: 2009-11-13
btn->setFocusPolicy(Qt::NoFocus);
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线yxhappy
只看该作者 5楼 发表于: 2009-11-20
请问楼主怎么解决这个问题的呢?我也碰到这个问题了。
快速回复
限100 字节
 
上一个 下一个