qt4 - QCheckbox/QRadioButton 换行 Qt4.6.0

标签 qt4 checkbox radio-button qcheckbox

我正在尝试使用标准 QCheckbox/QRadioButton 使用 Qt 来创建多行复选框/单选按钮。

我没有找到直接解决方案,因为 QRadioButton{wrap:true;}没有效果。
唯一可能的是访问 QRadioButton->label->setLineWrap(true)

  • 我想从设计师那里做到这一点
  • 不必重写小部件

  • 除了将 QRadioButton 和 QLabel 放在一起之外还有什么想法吗?

    谢谢,鲍里斯。

    最佳答案

    这确实很烦人,如果不重新实现就无法解决:标签使用 Qt::PlainText如果我没错的话。在我们的项目中,UI 团队通过两种方法解决了这个问题。

    使用 QRadioButton 按钮作为标题

    Layout using the QRadioButton as a title

    以这样一种方式重写 QRadioButton 文本,使其仅包含该选项的简要说明。在其下方放置一个 QLabel 并添加更长的描述。我们使用较小的字体和一点点缩进以使其看起来整洁。例如,这在 Mac OS X 中经常使用。

    从单选按钮中删除文本

    Layout using buddy labels

    重新布局 UI,以便将每个单选按钮放在 QLabel 的左侧。将整个文本添加到 QLabel 并将标签设置为单选按钮的伙伴。这是功能最少的方法,因为单击标签不会检查单选按钮。另外,对齐不是很好。

    关于qt4 - QCheckbox/QRadioButton 换行 Qt4.6.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1839194/

    相关文章:

    c++ - 在 OSX SnowLeopard 和 QT 4.8 上编译 QSerialPort

    c++ - 无法使用 std::for_each 在 QTextEdit 中构建完整的 html 表

    C++ 问题,返回一个函数。 '*' 标记之前的错误预期主表达式

    php - 如何在 codeigniter 中更新表而不重复

    c# - 具有大字体的多行复选框的左上框对齐

    如果单选按钮被选中,则 jQuery addClass

    linux - 如何在交叉编译 Windows 版 vlc 时包含 QtNetwork

    Symfony2 : Set label of checkbox from Class Field

    android - fragment 中的单选按钮 findViewById

    android - 如何从 fragment Kotlin Android动态设置单选按钮的高度