2012-04-23 46 views
1

我已經將QListWidget作爲QPlainTextEdit中的孩子用於完成建議。顯示QWidget的父母QWidget區域

建議列表顯示在光標下方,當行幾乎滿時,列表小部件的一部分會被文本編輯的邊框裁剪掉。是否有可能強制子窗口小部件展示出父窗口小部件區域?

我有一個想法,是使文本和列表編輯元素「兄弟姐妹」,我。即將它們添加到同一父級。但是這需要我的事件處理機制(因爲我認爲這兩個元素之間的父子關係)。

我認爲必須有辦法做到這一點,因爲我研究Katepart component且有KateCompletionWidget(顯示器建議)是KateView的直接孩子,當我運行它(如凱特文本編輯器),跨所示的列表文本編輯邊框。

回答

1

不幸的是,孩子無法在父母的QWidget矩形之外繪畫。你的兄弟姐妹的方法是解決這個問題的流行方案。另一種方法是讓孩子通知父母想要繪製什麼,但這可能會更先進一些,因爲您必須重新實施繪畫事件。

0

今天我發現了一種可行的方法 - 它基於QListWidget元素的setWindowFlags(Qt::ToolTip)方法。然而,在定位和事件處理方面略有改變。