• 10665阅读
  • 1回复

带下拉菜单的 QToolButton 边框样式的问题 [复制链接]

上一主题 下一主题
离线kursk
 
只看楼主 倒序阅读 楼主  发表于: 2010-12-06
就是那种典型的分为左右两边的按钮,点击menu-button后会弹出菜单
如果不设定边框的话不会出现问题,但在设定边框之后再进行绘制的时候,填充文字和背景的区域则包括了右侧menu-button的区域,从而使得图片和文字在整个按钮的中间儿不是左侧按钮中间的问题

以下提供一段代码方便说明问题,在鼠标hover的时候会出现按钮文字右移的情况:
    QFile file("test.qss");
    file.open(QFile::ReadOnly);
    a.setStyleSheet(file.readAll());
    file.close();

    QToolBar* tb = new QToolBar;
    QToolButton* button = new QToolButton;
    button->setText(QString("test"));
    QMenu* m = new QMenu;
    m->addAction(QString("1"));
    button->setMenu(m);
    button->setPopupMode(QToolButton::MenuButtonPopup);
    tb->addWidget(button);
    tb->show();

接下来是QSS,针对上边的代码可以把QSS文件名称设成test.qss:
QToolButton:hover
{
    border: 2px solid blue;
    background-color: red;
}

所以土问大家有没有什么好的解决方法?小弟感激不尽
离线b05071262

只看该作者 1楼 发表于: 2011-01-06
很巧,,我也碰到这个问题,,
快速回复
限100 字节
 
上一个 下一个