2016-06-20 4 views
0

私はQtのに新しいですので、知っていないすべての中の出入りの、あなたがそのツールチップテキストを取得するには、ツールチップが含まれているチェックボックスや他のフィールドの上にマウスを置いて、それが適用されていたときにそのため、どのように知っていただきたいと思います/ QTextBrowserウィジェットに表示されますか?この問題上の任意の助けをすべてのwidgitツールチップをオーバーライドして1つのQTextBrowserウィジェットに表示する方法

感謝。

答えて

0

各QWidgetのは、 "ツールチップ" プロパティがあります。それを取得するには、単に呼び出すことができます。

QString toolTip = desiredWidget->toolTip(); 

をまた、あなたが見るように、あなたのマウスが必要なウィジェットの上にカーソルを移動しますまで待つ必要はありません文字列としてツールチップを取得します。その後、あなたはあなたの質問に書いたように、QTextBrowserに表示するなど、このツールチップを自由に使用することができます。

0

あなたは動的カーソルの下にウィジェットのツールチップを表示しようとすると、マウスの動きを追跡してみてください。例えば、同じツールチップの頻繁な設定を防ぐために、より巧妙なものがあるかもしれません

class MyWidget: public SuperclassWidget 
{...}; 

void MyWidget::mouseMoveEvent(QMouseEvent *event) 
{ 
    const QWidget *widget = childAt(event->pos()); 
    if (widget != NULL) 
     _textBrowser->setHtml(widget->toolTip()); 

    SuperclassWidget::mouseMoveEvent(event); 
} 

最後のウィジェットを覚えている。

関連する問題