ui指针遇到问题

发布于:2025-09-13 ⋅ 阅读:(17) ⋅ 点赞:(0)

问题一:

现象:如图所示,报错是因为在 Ui::art2313a 类中没有名为 textEdit 的成员,却试图通过 ui->textEdit 来调用 showMessage 方法。

解决方法:选择正确的用于显示状态信息的控件(比如如果是用 QLabel 或者其他文本显示控件,就替换为对应的控件),或者如果是想使用状态栏显示,就比如说我选择使用TextEdit这个控件,则对应的参数也要改为相应改为 ui->textEdit->setText(status)。我把这个控件命名为状态。比如:

    connect(this, &art2313a::opStatus, this, [this](const QString &status) {
        ui->zhuangtai->setText(status);

与此类似的还有(豆包回答,刚好补充一下):

✅ 1. QLabel(标签)

  • 用途:显示文本、图片或动画(如状态提示、结果输出)。

  • 常用方法/属性

    • setText(const QString &text):设置文本内容。

    • setPixmap(const QPixmap &pixmap):设置图片。

    • setAlignment(Qt::Alignment):设置对齐方式。

    • setWordWrap(bool):设置是否自动换行。


✅ 2. QTextBrowser(文本浏览器)

  • 用途:显示富文本或HTML格式的内容,支持超链接。

  • 常用方法

    • setHtml(const QString &html):设置HTML内容。

    • setPlainText(const QString &text):设置纯文本。

    • append(const QString &text):追加文本。


✅ 3. QLCDNumber(LCD数字显示)

  • 用途:显示数字(如计数器、计时器)。

  • 常用方法

    • display(int num) 或 display(double num):显示数字。

    • setDigitCount(int):设置显示位数。

    • setMode(QLCDNumber::Mode):设置显示模式(十六进制、十进制等)。


✅ 4. QProgressBar(进度条)

  • 用途:显示任务进度。

  • 常用方法

    • setValue(int value):设置当前值。

    • setRange(int min, int max):设置范围。

    • setFormat(const QString &format):设置显示格式(如百分比)。


✅ 5. QStatusBar(状态栏)

  • 用途:在主窗口底部显示状态信息(通常用于应用程序状态)。

  • 常用方法

    • showMessage(const QString &message, int timeout = 0):显示临时消息。

    • addWidget(QWidget *widget):添加自定义控件(如标签、进度条)。

    • addPermanentWidget(QWidget *widget):添加永久控件(右端)。


✅ 6. QLineEdit(单行文本框)

  • 用途:可编辑的单行文本,也可用于显示状态(如只读模式)。

  • 常用方法

    • setText(const QString &text):设置文本。

    • setReadOnly(true):设置为只读。

    • setPlaceholderText(const QString &text):设置占位符提示。


✅ 7. QPlainTextEdit / QTextEdit(多行文本框)

  • 用途:显示多行文本或日志信息。

  • 常用方法

    • appendPlainText(const QString &text)(QPlainTextEdit)

    • append(const QString &text)(QTextEdit)

    • setReadOnly(true):设置为只读。


✅ 8. QGraphicsView(图形视图)

  • 用途:显示复杂的图形或自定义绘制内容(如图表、状态图)。

  • 常用方法

    • 通过 setScene(QGraphicsScene *scene) 设置场景。


✅ 9. QCalendarWidget(日历)

  • 用途:显示日期信息。

  • 常用方法

    • setSelectedDate(const QDate &date):设置选中日期。


✅ 10. QQuickWidget(用于显示 QML 界面)

  • 用途:嵌入 QML 界面,可用于显示动态状态界面。


🧩 其他可用于状态显示的控件:

  • QCheckBox / QRadioButton:通过勾选状态表示状态。

  • QTableWidget / QTreeWidget:显示结构化状态信息。

  • QDockWidget:可悬浮面板,用于显示辅助状态信息。


网站公告

今日签到

点亮在社区的每一天
去签到