2015-05-08 5 views
1

Я создал строку состояния в Qt. Я разрабатываю веб-браузер. Когда пользователь наводит ссылку, строка состояния показывает, что ссылка зависает.Показать строку состояния сообщение по умолчанию

Все в порядке, но я хочу установить текст по умолчанию, когда строка состояния пуста.

Есть ли возможность сделать это?

Я новичок :)

+1

Какой класс вы используете для своего виджета HTML? Это QWebView или QWebEngineView или что-то еще? –

+0

, пожалуйста, разместите код, как вы создали строку состояния и как вы создали веб-представление – Kunal

+0

Извините за задержку! Я загрузил http://doc.qt.io/qt-5/qtwebkitexamples-webkitwidgets-browser-example.html, и я пытаюсь понять его и модифицировать. Я стараюсь, чтобы добавить «placeholder» в строку состояния. Это QWebView. –

ответ

1

При подключении linkHovered сигнала QWebPage к STATUSBAR, вы не можете просто проверить, является ли она пуста, а затем отобразить все, что сообщение, которое вы хотели?

Код, как представляется, делает то, что вы описываете, но, может быть, я неправильно понял, что вы спрашивали? Примечание. Я просто создал QMainWindow, который по умолчанию имеет строку состояния.

#ifndef MYMAINWINDOW_H 
#define MYMAINWINDOW_H 

#include <QMainWindow> 

#include "ui_mainwindow.h" 

class MainWindow: public QMainWindow, private Ui::MainWindow 
{ 
    Q_OBJECT 

    public: 
    MainWindow(QWidget *parent = 0) : QMainWindow(parent), defaultMessage("Default Message") { 
    setupUi(this); 
    webView->load(QUrl("http://www.stackoverflow.com")); 
    this->statusBar()->showMessage(defaultMessage); 
    connect(webView->page(),SIGNAL(linkHovered(const QString & , const QString & , const QString &)), 
      this, SLOT(hovered(const QString & , const QString & , const QString &))); 
    } 

    public slots: 

    void hovered(const QString & link, const QString & title, const QString & textContent) { 
    this->statusBar()->showMessage(link == "" ? defaultMessage : link); 
    } 

private: 
    QString defaultMessage; 

}; 

#endif 

Дайте мне знать, если это поможет.

+0

Спасибо @Erik! –

Смежные вопросы