問題タブ [win32gui]
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.
windows - WS_EX_LAYERED ウィンドウが親ウィンドウに対して移動しない
WS_EX_LAYERED 拡張スタイルを持つウィンドウを作成しました。その後、このウィンドウの親を SetParent の呼び出しとして変更しました。しかし、デスクトップ上で親ウィンドウを移動すると、親に対するウィンドウの位置が変わりません。
注:- TSSHELLWND は mstsc セッション ウィンドウです。自分のウィンドウを mstsc セッション ウィンドウの子にしたいと思います。
子ウィンドウに LAYESRED 属性を適用したために動かないのですか????
python - Python - Win32Com - Excel スプレッドシートのセルからハイパーリンクを抽出するには?
次のコードを使用して、Excel スプレッドシートの個々のセルからハイパーリンクを取得しようとしています。
これにより、次のように出力されます。
しかし、ハイパーリンクを抽出しようとすると、リンク/URL が文字列形式で返されず、「COMObject unknown」が返されました。
c++ - コンボボックスの HSCROLL と VSCROLL
次のようにコンボボックスを作成しましたHSROLL
:
ただし、VSCROLL
アイテムが2つしかない場合でも、 を提供します。これは非常に醜いです。をドロップするWS_VSCROLL
と、問題は解決します。
一方、私も使用しました:
20 アイテムのみを表示するには、他のアイテムは で表示されVSCROLL
ます。VScroll バーは、20 を超えるアイテムがある場合にのみ表示されます。だから私はドロップできませんWS_VSCROLL
。
アイテムが少ないときに VSCROLL バーなしで「CB_SETHORIZONTALEXTENT」を使用する方法について何か考えはありますか?
events - NM_CUSTOMDRAW イベントを処理してリスト アイテムを取得する方法
私は win32/MFC プロジェクトに取り組んでいます。ときどきいくつかの文字列を追加する必要があるカスタム CListCtrl コントロールがあります。CListCtrl に動的に追加されたアイテムに対して何らかの操作を実行する必要があります。
超基本的には、次のことを行う必要があります。
- 単一要素の追加を 検出します。
- _single items_ IMMEDIATELY AFTER (理想的には、InsertItem() 呼び出しの直後) を取得します。
- 単一アイテムの値をマップに保存します。これを使用して、他の操作を実行します。
メソッド DrawItem() をオーバーライドしてこれを行うことを考えました。しかし、OnDraw イベントは私の CListCtrl では利用できないようです。
イベントは生成されません。
重要: MyCustomCListCtrl には " On Draw Fixed " プロパティがTrueに設定されていますが、" View " プロパティはレポートとして設定されていないことに注意してください。
したがって、こことここで説明されているように、NW_CUSTOMDRAW イベントを処理し、CustomDraw ハンドラーを作成することにしました。
ここでは、別のコード例を表示できます。
次に、CListCtrl から単一の itemID を取得する方法が必要です。
より正確には、NMHDR struct から単一のアイテム IDを取得する方法が必要です。
これどうやってするの?追加したLASTアイテムの ID しか取得できません。私が見つけられない単純な間違いだと確信しています。
以下のサンプルコード:
CList Ctrl を含むダイアログのソース:
私のカスタム CList Ctrl ソース:
どんな助けでも大歓迎です!
PS 次のようなヒントは教えないでください。
- 「自分のドロー固定」プロパティを True に設定します。
- 「ON_WMDRAWITEM()」という行が挿入されていることを確認してください
- CListCtrl をレポートとして変換します。
私はすでにすべてを試しました... :-)
ありがとうございます!
それ
windows - スタンドアロンの[戻る]ナビゲーションボタンをWindowsアプリケーションに挿入するにはどうすればよいですか?
自分のダイアログで同じボタンを使用したい:
ご覧のとおり、Windowsエクスプローラーやその他のシステムダイアログで使用されています。
それは標準的なコントロールですか?アプリケーションに挿入するにはどうすればよいですか?
c++ - SyslinkコントロールのNM_CLICKを処理する方法
これを適切に機能させる方法を見つけようとして、かなりの調査を行いました。WM_NOTIFY-> NM_CLICKをフィルタリングすると、syslinkの実際のクリックイベントがキャッチされることを読みました。問題は、イベントをキャッチすることですが、無限の再帰でスタックし、数秒で何百ものブラウザウィンドウが表示されるか、リンクが開いたままになります。
実行した手順:
- ダイアログでSyslinkを作成
- Syslinkコントロールリンクにタイトルを追加し、IDDをIDC_LINK1に変更します
NM_CLICKイベントのWM_NOTIFYをフィルタリングします
/li>
私の本当の質問は、どうすればこれを適切に行うことができるかということだと思います。リンクをURLとして実行するためにSyslinkが適切にフィルタリングされる方法を示す良い例は見当たりません。
c - リスト ビューへの挿入時に自動スクロールを無効にする (win32 API、C)
次のように、共通コントロールのリストビューに項目を挿入しています。
正常に動作しますが、垂直スクロールがリストの一番上に戻るので面倒です。そのため、アイテムを見ているときにこの挿入関数を呼び出すと、ビューが失われ、手動でスクロールしてプログラムを作成する必要があります一緒に働くことは不可能です。
この自動スクロールを防ぐにはどうすればよいですか?
Win32 APIを直接(MFCではなく)使用して、Cでプログラミングしています。
PD: ListView スタイル:
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP | WS_CHILD|WS_VISIBLE|WS_BORDER|WS_VSCROLL|WS_HSCROLL|LVS_REPORT
c++ - 別のダイアログプロセスでダイアログexeを子ウィンドウとしてロードする方法
私は 2 つの別個のアプリA.exeとB.exeを持っています。これにより、2 つの独立したトップ レベル ウィンドウが生成されます。どちらも C++ アプリで、Windows プラットフォームで win32 GUI フレームワークを使用します。これらを新しいアプリC.exeに結合して、マルチタブダイアログの別々のタブに 2 つを表示したいと考えています。
C.exeのDialogをA.exeの(トップレベルウィンドウ)の親ウィンドウとして設定する方法、またはDlg1
A.exe (トップレベルウィンドウ)をC.exeの子ウィンドウとしてロードする方法Dlg1
win32またはMFCを使用した解決策はありますか? それとも不可能ですか?
c++ - C ++で1つのwinformに複数のビデオストリームを表示する
ネットワークからの複数のビデオ ストリームを 1 つのウィンドウに描画できる Windows アプリケーションを C++ で開発したいと考えています (ビデオ会議アプリケーションなど)。言い換えれば、1 つのウィンドウを作成し、このウィンドウを複数のセクションに分割して、各セクションにビデオ ストリームを表示する必要があります (oovoo や webex などのビデオ会議アプリケーションで見られるように)。
ここで学習を開始し、重要な主題を魔女にするにはどうすればよいですか? ネットで Google を検索しましたが、この主題に関する記事や例が見つかりません。
ガイドしてくださいどうもありがとう
c++ - WinXP でアプリケーションの音量を制御する方法
WinXP で特定のアプリケーションの音量をプログラムで制御したいと考えています。私は abt 1 つの API を知るようになりましたwaveOutSetVolume()
が、それは Win Vista 以降でアプリケーションのボリュームを制御します。XP の場合、システム ボリューム全体に影響を与えるだけです。
XPでこれを達成する方法を教えてください。
さらに、システムボリュームミュートチェックボックスのチェックを外す/チェックする方法も同様です。