他のウィジェットの親として機能し、それらを注文するQtウィジェットを作成する必要があります。完全に透明な背景を持つqtウィジェット
今、問題は完全に透明な背景にするにはどうすればいいですか?
私はこのようにそれを行うために考えた:
struct Imp
{
Imp(QWidget *parent) : thisWidget(new QWidget(parent))
{
thisWidget->setAttribute(Qt::WA_TranslucentBackground, true);
}
QWidget *thisWidget;
};
は、私は属性を設定する必要があると思いますか、またはそれなしで正常に動作するために起こっていますか?それは完全にあなたの問題を解決するかどうか
は、あなたが本当に_transparent_背景が必要ですか、それは_no_背景を持っているのに十分ですか?これは本当の違いです:透明な背景では、OSは_underlying_ウィンドウにピクセルをペイントするように指示します。バックグラウンドがなければ、OSは子供がウィンドウ全体をペイントすることを期待しています。 – MSalters
@MSaltersこのウィジェットはウィンドウ内の場所です。このウィジェットの子ウィジェットのみが表示されます。このウィジェットの背後にあるもの(子ウィジェットで覆われていないもの)は見なければなりません。 –
私はこの質問を理解しているかどうか分かりません。Qt4ではデフォルトでQWidgetはその背景に何も描画せず、その子だけが描画されます。 –