問題タブ [editcontrol]

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 投票する
6 に答える
4731 参照

c++ - Windows CEで単一行のEDITコントロールのEnterキーを押したときにビープ音をオフにするにはどうすればよいですか?

C ++とネイティブWINAPIを使用して(つまり、MFCなどを使用せずに)POCKET PC 2003(Windows CE 4.2)デバイスを対象としたアプリケーションを開発しています。その中には、メインウィンドウのどの部分(ダイアログではない)を1行で編集するコントロールがあります。したがって、Enterキーを押したときのWindowsの通常の動作は、ビープ音だけです。

次のコードを使用して、編集コントロールのウィンドウプロシージャをサブクラス化し、デフォルトの動作をオーバーライドしました。

これにより、「OK」ボタンを押すのと同じ動作が発生します。

ここで問題になります。このウィンドウ手順は、ビープ音を鳴らすデフォルトの動作を上書きしません。ENTERが押されたときにトリガーされ、キャプチャに失敗したメッセージが他にあるに違いないと思います。どちらかわからない。アイテムの衝突が発生したときに特定の状況で再生される他の音を台無しにするので、デバイスがビープ音を鳴らさないようにしたいのですが、ユーザーにそのことを警告することが重要です。

前もって感謝します。

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

winapi - エディット コントロールで EM_SETHANDLE を使用するには?

EM_SETHANDLE メカニズムを適切に使用してエディット コントロールのテキストを設定する方法がわかりません。Get および Set ウィンドウ テキストは、アプリケーションにとって遅すぎます。

ドキュメントから、割り当てられたバッファがコントロールによって訴えられ、部分的に機能することを理解しています。

テキストがコントロールに入力されると、バッファに表示されますが、memcpy などを使用してバッファが更新されると (コードにバグはありません)、更新されたテキストは正しく表示されません。更新のたびに EM_SETHANDLE (SetHandle() ) を試してみましたが、数回試行すると失敗します。ある種のヒープ割り当てエラーがあります。RedrawWindow() も機能しません。

使用法についてネット上で適切な情報を得ることができません。ヘルプ!

アプリ固有の詳細を残した私のコードは、次のようになります。

前もって感謝します

0 投票する
3 に答える
2077 参照

winapi - WM_CTLCOLOREDIT 処理時のペイントの問題

色を変更する必要がある非読み取り専用の編集コントロールがあるため、WM_CTLCOLOREDIT を処理します。連続して入力している場合はうまく機能しますが、問題は、バックスペースを押したり、削除したり、既存のテキストの途中から入力を開始したりすると、表示がすべて乱雑になることです。親のサイズを変更するなどして再描画するまで、それは残ります。これを修正するにはどうすればよいですか?

編集:いくつかの詳細。この問題は、背景色が設定されている場合にのみ発生し、テキストの色だけが設定されている場合には発生しません。コードは次のようになります

ありがとう

0 投票する
3 に答える
1158 参照

winapi - Windows 7 編集コントロール、垂直スクロールが機能しない

正常にコンパイルされ (mingw) 正常に実行されるアプリケーションがありますが、作成された編集コントロールにはスクロール バーがありますが、垂直スクロール バーは何もしません。同じ実行可能ファイルが WinXP で正常に動作します。また、編集コントロールには垂直スクロール バーと水平スクロール バーの両方があり、水平スクロール バーは正常に機能しますが、垂直スクロール バーは機能しません。垂直スクロール バーは表示され、クリック可能ですが、何も起こりません...

次のコードは、編集コントロールを作成するときに使用されます。

次のコードは、編集コントロールにテキストを追加するために繰り返し使用されます。

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

c++ - 次の文字が MFC からエディット コントロールに配置される位置を変更する方法は?

文字列の最後の文字を消去し、編集コントロールのテキストをその新しい文字列に設定するコードがあります。問題は、その後、次に入力する文字の位置が変わることです。例:

エディット コントロール ボックス: [ 12345| ] (スラッシュは、次に入力する文字が配置される場所です)

上記のコードを実行した後

エディット コントロール ボックス: [ |12345 ] (位置が 1 より前に移動しました)

位置を文字列の最後に移動するにはどうすればよいですか? 私のコード:

0 投票する
3 に答える
9078 参照

c++ - MFCを使用してエディットコントロールで文字をブロックする(フロートのみの例)

OnCharとOnKeydownを上書きして、特定の種類の文字が編集コントロールに挿入されないようにブロックしようとしています。複数のポイントをブロックしようとしています'。' そして数ではないものは何でも。

まず、すでに「。」があるかどうかを確認します。ダイアログクラスで定義された変数をfalseに設定することにより、フォーカスがある編集コントロールで:

OnCharで、入力されている文字をチェックしています。それがポイントであるかどうかの数ではないが、すでにポイントがあった場合、私はCDialogからOnCharを呼び出さない:

さて、私のコードは機能していません。コンパイルされ、エディットコントロールに入力してもクラッシュしませんが、何もしません。それを上書きする正しい方法は、CDialogEx :: OnChar()の呼び出しを防ぐことなのか、それとも表示される文字がnullになるようにnChar=0にする必要があるのか​​疑問に思っています。しかし、それに加えて、OnCharで表示しようとしているメッセージも表示されていません。つまり、MyMainDialog :: OnChar()が呼び出されていません。代わりにCDialogEx::OnChar()を上書きする必要がありますか?

ご清聴ありがとうございました

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

c++ - MFC を使用しない win32 C++ アプリケーションでエディット コントロールが奇妙に見えるのはなぜですか?

ウィンドウを作成したこのプログラムがあり、その中にプレーンC(MFCまたはダイアログなし)を使用して編集コントロールを追加しました。編集コントロール作成コードは次のとおりです

しかし、レンダリングされたコントロールは醜く見えます...

ここに画像の説明を入力


そして、これが私のコントロールを次のように見せたいものです...

クールなビスタをテーマにした編集コントロール

電話InitCommonControlsExして含めてみましcomctl32.libたが、何も変わりませんでした。
すべての依存関係を記述したアプリケーション マニフェスト ファイルを追加すると問題が解決すると思いますが、Visual Studio 1010 IDE を使用してそれを行う方法がわかりません (マニフェスト ファイルを自分で編集することはできません)。

c/c++ (MFC や .NET などを使用しない) だけを使用して、通常の Vista スタイルのコントロールを取得することは可能ですか? マニフェスト リソースを追加することで問題が解決する場合、1 つのマニフェスト ファイルを作成/生成し、exe に追加するにはどうすればよいですか?

更新: Unicode charset/libraries を使用するようにプロジェクトを更新し、編集コントロールを除いてビジュアル スタイルが機能するようになりました...見てください..
ここに画像の説明を入力
編集コントロール WS_CHILD|WS_VISIBLE|ES_AUTOHSCROLL|ES_NOHIDESEL にスタイルを使用しました

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

delphi - 編集コントロールでカーソルの位置をオフセットする方法は?

左側にアイコンを追加し、右側にアイコン ボタンを追加するカスタム編集コントロールを作成しています。どちらも編集コントロール内にあります。これには、テキスト (およびカーソル) の開始点を X ピクセル分だけ右にシフトする必要があります。これは、右側のボタン用のスペースを確保するために、テキストを描画できる幅も「制限」する必要があることを意味します。その意図は、ブラウザなどの左側にカスタム アイコンを提供することと、右側に編集コントロールの内容をクリアするための「X」ボタンを提供することです。

子孫Rectでテキストとカーソルを描画する場所をオフセットする方法は?TCustomEdit

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

winapi - ダイアログで、エディット コントロールで Enter キーを押したときにデフォルトのプッシュボタンがフォーカスされないようにするにはどうすればよいですか?

Win32/C++。複数行の編集コントロールと、デフォルトに設定したプッシュボタンがありますDM_SETDEFID。編集にフォーカスを置いて Enter キーを押すと、プッシュボタンに移動するのではなく、フォーカスをそこにとどめたいと思います。