問題タブ [createwindow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
9215 参照

c++ - クラス ウィンドウへのハンドルを取得しても、BringWindowToTop が機能しない

次の方法でクラスを登録しています。

InitInstance メソッドを呼び出して、クラスのコンストラクターでウィンドウを作成します。

現在、他のアプリケーションでウィンドウを見つけて、一番上に表示しようとしています:

以下のコードで新しく作成されたウィンドウを編集できます

pWndPrev NULL ではないため、ウィンドウを見つけることができますが、アプリケーションが前面に表示されません。CNDSClientDlg の代わりに他のクラスを登録する必要がありますか? MFC アプリケーションを一番上に表示したいと考えています。

0 投票する
1 に答える
4939 参照

c++ - CreateWindowがウィンドウクラスを見つけることができないため失敗する-C++

私のアプリケーションでは、関数CreateWindowが何らかの理由で失敗しています。 GetLastErrorエラー1407を示します。これは、MSDNのドキュメントによると、「ウィンドウクラスが見つかりません」です。次のコードはCreateWindow、呼び出される方法と、呼び出し時のそれぞれの変数名を示しています。

私は何が間違っているのですか?

0 投票する
1 に答える
769 参照

winapi - CreateWindow スクロールバーの配置の問題

次の部分的なコードを検討してください。私の問題は、スクロールバーが長方形に整列していないことです。長方形とスクロールバーの間に大きなギャップがあります。実験して「オフセット」が何であるかを調べて、それを入れるだけでよいと思いましたが、スクロールバーが明らかに座標を尊重していないように見える理由を理解したいと思います。

ギャップを修正するには、次のように CreateWindow 呼び出しを呼び出します。

しかし、なぜ VTRect->right - 100 が必要なのか理解できませんが、スクロールバーは Rectangle の右側にあります。VTRect->right - iHThumb を試してみましたが、ギャップは小さいものの、まだギャップがあることに注意してください。

赤い四角形とスクロールバー、および 2 つの間のギャップのスクリーン ショット:

代替テキスト

0 投票する
2 に答える
3475 参照

windows - CreateWindowEx が ERROR_CANNOT_FIND_WND_CLASS で失敗する

特定のクラス タイプ ("VSDebugger CDataTipWnd") でウィンドウを作成しようとしていますが、CreateWindowEx を実行すると失敗し、GetLastError によってクラスが見つからないことが通知されます。参照用のコードは次のとおりですが、重要ではありません。

私はプロセスでプラグインとして実行しており、このクラスのウィンドウが以前に作成されていることを知っています (Winspector/Spy++ を使用して確認しました) が、このタイプのウィンドウを自分で作成しようとすると、動作せず、理由がわかりません。

ドキュメントには、 「クラスを登録するモジュールがウィンドウを作成するモジュールでもある場合、クラス名は RegisterClass または RegisterClassEx で登録された任意の名前にすることができます。クラス名は、定義済みのシステム クラス名のいずれかにすることもできます。システム クラス名の一覧については、「備考」セクションを参照してください。RegisterClass が実際に別のモジュール (dll/exe) で作成された可能性はありますか? 別のモジュールでクラスを作成するだけで、別のモジュールから名前でアクセスできなくなりますか?? もしそうなら、どうにかしてそのクラスを見つけて、それでウィンドウを作成できますか?

ありがとう!ヴィタリー

0 投票する
2 に答える
16020 参照

c - Win32: CreateWindowExW() 関数を使用して ListBox コントロールを作成する方法は?

私は複数のサイト、ドキュメント、チュートリアルを調べてきましたが、それらはすべて同じことを言っています。つまり、コントロールは Win32 の API のウィンドウにすぎないため、CreateWindowExW()関数を使用ListBoxしてメイン上にコントロール/ウィンドウを作成できます。アプリケーション ウィンドウ。

すべてのコントロールが異なるdwStyleを持つウィンドウであるという概念は理解できますが、コントロールをインスタンス化する方法、つまりコントロールの方法を見つけるのに苦労していますListBox

LISTBOX次のように、ダイアログがその宣言で指定されているように記述されているチュートリアルに遭遇しました。

そして、彼の C プログラムで次のように使用します。

これで、概念を完全に理解できるようになりました。ListBox余談ですが、コントロールを追加するメイン アプリケーション ウィンドウを作成および設計できるようにしたいと考えています。このチュートリアルの例では、CreateWindowExW()関数を使用してコントロールを作成するのではなく、実際にメイン アプリケーション ウィンドウとなるダイアログを作成します。

1 -コードでメイン ウィンドウにコントロールを追加する方法についての手がかりはありますか?ListBox

WM_CREATEメッセージを処理しながら作成することを考えました。

2 -これは良い考えですか?

3 -このシナリオでのベスト プラクティス/アプローチは何ですか?

0 投票する
0 に答える
1125 参照

windows - CreateWindowEx が期待どおりに機能しないのはなぜですか?

http://www.winprog.org/tutorial/simple_window.htmlのチュートリアルに従いました 。

チュートリアルのすべてが何をしているか、テスト プログラムが機能することを十分に理解しています。インポートされたDLLのhInstanceと、winampによってプラグインに与えられた親hwndを使用して、winamp用のプラグインを作成しようとしました。

メッセージ ループに到達しますが、何も表示されません。

0 投票する
2 に答える
6133 参照

c - アイコンなしで CreateWindowEx を使用してウィンドウを作成する

C# を使用すると、必要な効果を簡単に得ることができました。

タイトルバーにアイコンがない標準ウィンドウ

ただし、C で Win32 API を使用して同じことを行うのに問題があります。アイコンが (まったく) ないウィンドウを作成する方法がわかりませんが、キャプション、最小化ボタン、閉じるボタンがあります。ボタン。

クラスを適切に登録しましたが、ウィンドウ スタイル/拡張ウィンドウ スタイルに何を配置すればよいかわかりません。

上記のコードは次のように生成されます。

タイトルバーにアイコンがある標準ウィンドウ

タイトルバーにまだアイコンがあり、私が望んでいたものではありません。

0 投票する
1 に答える
2998 参照

winapi - 編集コントロールの Win32 デフォルトの高さ

私はCreateWindowExエディット コントロール (テキスト ボックス) を作成するために使用しCW_DEFAULTていますが、テキスト ボックスの既定の高さを取得するのに役立たないと言っています。高さがゼロのウィンドウを作成するだけです。

エディット コントロールを通常の外観のテキスト ボックスに変換できるように、テキスト ボックスのシステムの既定のサイズを取得するにはどうすればよいですか?

0 投票する
2 に答える
3128 参照

c# - C#ウィンドウの作成-親ウィンドウの定義

C#定義したハンドルに親が設定されたウィンドウを使用して作成したいのですが、これは別のプロセスウィンドウハンドルです。

誰もがこれを行う方法を知っていますか?

ご挨拶、