QPainter機能を使用したい外部ライブラリからWindows HDCハンドルを取得しています。 QtにQPaintDeviceをHDCハンドルから作成する方法はありますか?QPaintDeviceをHDCハンドルから作成する
2
A
答えて
0
これを行う1つの方法:
を、WindowsのAPIを使用するには、HDCからHWNDを取得します。
HWND handle = WindowFromDC(hdc);
assert(handle != NULL);
保護されたメンバーconvertにアクセスするには、QWidgetをサブクラス化します。これを使用して、このソリューションで説明されているように、このメンバーを使用してQWidgetを作成します。How to create a qwidget with a hwnd as parent。この例では、QWidgetWrapperのサブクラスを呼び出しました。 WLDは、 "プラットフォーム依存ウィンドウ識別子" のためのQtでのtypedefである
QWidgetWrapper *w = new QWidgetWrapper();
w->create((Wld)main_window);
注意。
関連する問題
- 1. Boost.Pythonタイプからハンドルを作成する
- 2. HDCメモリリーク(HDCのリリース/ hdcの削除)
- 3. 非アクティビティクラスのハンドルを作成する
- 4. ハンドルDbContext作成例外
- 5. リストを作成するためにハンドルを部分的にハンドルに渡す
- 6. DeviceContext(HDC)のアルファチャンネル
- 7. hDCのメモリ管理
- 8. "無効なハンドル" CGBitmapContextの作成
- 9. std :: ofstreamからハンドルを取得する
- 10. Windowsハンドルからオブジェクトを取得する
- 11. Node.js/React Appでハンドルを作成する - JenkinsとDockerのベストプラクティス
- 12. 固定サイズのハンドルでQScrollBarを作成するには?
- 13. Rustのアプリケーションコンテキストのハンドルを作成する方法は?
- 14. glmfitのインジケータ関数やハンドルを作成するには?
- 15. ハンドル作成時にどのように壊れますか?
- 16. SFMLが提供するX11ハンドルからIrrlichtデバイスを作成する。ランタイムX11/OpenGLはエラー
- 17. ウェブサービスからのハンドル配列
- 18. MSIを開かずに有効なMSIハンドルを作成します
- 19. jqueryサイズ変更可能なハンドル - 彼らは動作するはずですか?
- 20. はcudnnハンドルを作成できませんでした:CUDNN_STATUS_INTERNAL_ERROR
- 21. Dockerイメージがnetlinkハンドルを作成できません
- 22. Adobe AIRアプリケーションからHDCまたはScreenShotを入手するにはどうすればよいですか?
- 23. CDCオブジェクトからHDCオブジェクトを取得するにはどうすればよいですか?
- 24. Haskell:ハンドルからハンドルにデータをパイプする最速の方法は何ですか?
- 25. FORTRANルーチン内で構造体/配列のハンドルを作成する方法は?
- 26. フォームオブジェクトを作成するかモデルから生成するか
- 27. 私はGdi + APIで描画できるように、WPFウィンドウからHDCを取得できますか?
- 28. メニューファイルを作成し、そこからbashメニューリストを作成する
- 29. カスタムビューをプログラムで作成してからアニメーションを作成する
- 30. クラスからHSQL作成テーブルクエリを作成
私が見る限り、それは不可能です。 QWidget(QPaintDeviceから継承)にはHDCという概念があります。 QWidget :: getDC()でHDCを取得できますが、設定できません。内部的にはQWidgetPrivate :: dcに格納されています。 QWidgetのPimplクラスでは完全にアクセスできない。 – dagur