【问题标题】:Qt - change the text of QTextBrowser inside GridLayoutQt - 在 GridLayout 中更改 QTextBrowser 的文本
【发布时间】:2014-12-14 13:53:30
【问题描述】:

我有一个QGridLayout,里面填满了QTextBrowser's

我可以使用itemAtPosition(i,j) 访问它们,所以我可以例如。使用widget()->setStyleSheet切换到后台。

有没有办法更改这些字段中的文本

【问题讨论】:

    标签: c++ qt qtextedit qtwidgets


    【解决方案1】:

    使用 setText() 或 append() 来执行此操作,但是您获取指针的方法不是很好。您应该使用原始指针进行操作。例如

    QTextBrowser txt;
    grid.addWidget(&txt,...);
    //...
    txt.append("example");//we just use object, we don't get this object from layout
    

    QTextBrowser 继承了 QWidget,所以你也可以使用 setStyleSheet()。

    关于您当前的方法:当然,您可以使用 qobject_cast 将指针转换为所需的类型,但请尝试使用更简单的方法。

    (qobject_cast<QTextBrowser*>(grid.itemAtPosition(0,0)->widget()))->append("example");//is it so beautiful?
    

    【讨论】:

      猜你喜欢
      • 2012-02-09
      • 1970-01-01
      • 2021-04-18
      • 1970-01-01
      • 2019-06-27
      • 2021-09-15
      • 1970-01-01
      • 2022-01-21
      • 1970-01-01
      相关资源
      最近更新 更多