【问题标题】:Image on a button not working properly in QT按钮上的图像在 QT 中无法正常工作
【发布时间】:2017-03-29 01:12:34
【问题描述】:

我认为我的图像按钮做错了什么。我想做一些简单的事情,比如每当我将鼠标悬停在按钮上或按下它时让它们改变图像。样式表目前对我来说有点模棱两可。

这是一个我认为我做错了的代码片段:

border-image: url(:/Data/buttonNUC_Idle.png) 0 0 0 0 stretch stretch;

hover:{border-image: url(:/Data/buttonNUC_Hover.png) 0 0 0 0 stretch stretch;};

pressed: {border-image: url(:/Data/buttonNUC_Idle.png) 0 0 0 0 stretch stretch;};

有人知道我能做什么吗?


我尝试了另一件事,但无济于事。

void MainWindow::on_nucButton_pressed()
{
    ui->nucButton->setStyleSheet("QLineEdit {border-image: url(:/Data/buttonNUC_Pressed.png) 0 0 0 0 stretch stretch;}");
   // printf("Work?\n");
}

【问题讨论】:

  • 请用 HTML、CSS 添加完整代码。
  • 这就是我在样式表中的全部内容。没有使用 html,但是,我可以给你 xml 位吗?
  • 我尝试了其他方法。
  • 当我尝试这样做时并没有完全帮助我,我设法使用样式表在按钮上获得了一个图像:border-image: url(:/Data/buttonNUC_Idle.png) 0 0 0 0 拉伸拉伸;而其他诸如悬停和按下之类的方法不起作用,这绝对是奇怪的,因为我曾在我之前做过的另一个项目中使用它。

标签: c++ css qt user-interface qtgui


【解决方案1】:

试试这个

ui->nucButton->setStyleSheet("QLineEdit {border-image: url(:/Data/buttonNUC_Pressed.png) 0 0 0 0 stretch stretch;}"
                             "QLineEdit:hover {border-image: url(:/Data/buttonNUC_Idle.png) 0 0 0 0 stretch stretch;}"
                             "QLineEdit:pressed {border-image: url(:/Data/buttonNUC_Idle.png) 0 0 0 0 stretch stretch;}");

【讨论】:

    【解决方案2】:

    解决了 - 只需将旧项目代码复制粘贴到新项目中,一切正常。出于某种原因,我的 Qt 项目被窃听了,它没有让我这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-20
      • 1970-01-01
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多