增加复选框大小而不是QT中的文本?

时间:2011-06-10 05:41:36

标签: qt

如何在QT中增加复选框大小而不是文本?

感谢。

enter image description here

3 个答案:

答案 0 :(得分:15)

杰罗姆给了你很好的建议。我将举几个例子。

QCheckBox::indicator {
     width: 40px;
     height: 40px;
 }

  QCheckBox::indicator:checked
  {
    image: url(../Checkbox_checked_normal.png);
  }
  QCheckBox::indicator:unchecked
  {
    image: url(../Checkbox_unchecked_normal.png);
  }

  QCheckBox::indicator:checked:hover
  {
    image: url(../Checkbox_checked_hovered.png);
  }
  QCheckBox::indicator:unchecked:hover
  {
    image: url(../Checkbox_unchecked_hovered.png);
  }
  QCheckBox::indicator:checked:pressed
  {
    image: url(../Checkbox_checked_pressed.png);
  }
  QCheckBox::indicator:unchecked:pressed
  {
    image: url(../Checkbox_unchecked_pressed.png);
  }
  QCheckBox::indicator:checked:disabled
  {
    image: url(../Checkbox_checked_disabled.png);
  }

注意 url()用法之间的区别。在我的例子中,我从磁盘而不是嵌入式资源系统加载图像,我觉得更合适。如果您使用(:/ ...)启动URL,则从嵌入式资源系统加载。

然后按如下所示加载样式表

QFile file("your path");
bool bOpened = file.open(QFile::ReadOnly);
assert (bOpened == true);

QString styleSheet = QLatin1String(file.readAll());

qApp->setStyleSheet (styleSheet);

我希望这会有所帮助。

答案 1 :(得分:12)

我建议使用Qt style sheet

您可以更改指标的大小:

QCheckBox::indicator {
     width: 40px;
     height: 40px;
}

您必须更改指示器的图像,并提供具有相应尺寸的图像:

QCheckBox::indicator:checked {
     image: url(:/images/checkbox_checked.png);
}

答案 2 :(得分:1)

我用过这个:

eyeChk = new QCheckBox("Eyes:");

_eyeChk->setStyleSheet("QCheckBox::indicator { width:150px; height: 150px;} QCheckBox::indicator::checked {image: url(/home/jvdglind/Downloads/280px-PNG_transparency_demonstration_2.png);}");

刚刚找到合适的默认复选框图片。