2020年8月18日 星期二

在 Qt 的顯示中文偵錯訊息

在 Qt 的顯示中文偵錯訊息

前言

  在之前的 TextEdit 的基本應用 裡有使用 TextEdit 來顯示輸入的文字在偵錯訊息,但如果輸入中文會顯示亂碼,這次要解決這個問題。

內容

  這次使用到的範例可以到 [ GitLab ] HelloQt 下載範例,專案路徑
(HelloQt' directory)/TextEdit/Basic ,在範例裡顯示偵錯訊使用以下
void MainWindow::onPushButtonClicked(bool clicked)
{
  qDebug("TextEdit:%s",ui->textEdit->toPlainText().toLocal8Bit().data() );
}

如果 TextEdit 裡有中文的話會顯示亂碼,要解決這個問題可以透過 QDebug ,將範例改成以下
void MainWindow::onPushButtonClicked(bool clicked)
{
  //qDebug("TextEdit:%s",ui->textEdit->toPlainText().toLocal8Bit().data() );
  qDebug() << ui->textEdit->toPlainText();
}

使用的方法類似 C++ STL 字串,要使用時需要另外的 include ,如下
#include <QDebug>

參考資料

[ doc.qt.io ] QDebug Class

相關文章與資料

[ GitLab ] HelloQt
TextEdit 的基本應用

沒有留言:

張貼留言