こんにちは、前に一度書いたものです。日数が経ってしまってすいませんでした。
今悩んでることを率直に聞いてみたいと思います。よろしくお願いします。
今SDI形式でタイピングソフトを作っているのですが、お題が表示され、その下に文字を書きこんでいくという画面でお題となる文字列を表示させるのは簡単なんですが、その下に直接文字を打ちこんでいくという作業がどうやっていいかわかりません。どんな関数を使っていいのかもわからないのでできれば詳しく教えてください。自分の中の考えでこの問題を解こうと考え付いたことはSDIからその画面だけダイアログを表示させてそこに入力させて、SDIにまた戻ってくるということなのですが、これが実現可能なのかとういことを今調べているのですが中々すすみません。そして、やはり文字列の直接入力はSDIでは難しいのでしょうか?
No.1ベストアンサー
- 回答日時:
文字を描画するのは
DrawText()
DrawTextEx()
TextOut()
などのAPIを使えば大丈夫でしょう。
色、大きさ、フォントなどを変えたい場合はデバイスコンテキストの操作をする必要があります。ここで全部を書けるほど簡単な処理ではないので本屋さんなり図書館なり行って書籍を当たりましょう。
「Win32アニメーションプログラミング」や「Inside VisualC++」(ちょっと高いか)、「Inside Windows」当りがいいんじゃないでしょうか?
文字の取得は深く考えないならWM_CHARメッセージのハンドラで処理を書き、キーリピートの防止など、いろいろ細工を施すのであればWM_KEYUPやWM_KEYDOWNなどのハンドラで処理すれば大丈夫だと思います。
MFCベースで作られているのであればViewクラスのそれぞれのメッセージハンドラで引数として渡されてきます。
上記の方法では文字列ではなく押された文字やキーが帰るだけですので受け取った入力をもとに文字列に直す必要があります。
No.2
- 回答日時:
あまり参考にはならないかも知れませんが、
同じようなことがあったので書きます。
1.エディットコントロールと同じようなものを自分で作ろうとしました.
2.イベントハンドラーのなかでキーイベントを取り出し処理しようとしたのですが、アルファベットの処理はできるのですが、漢字変換が上手くできません。
文字カーソル(キャレット)の場所を制御できなかったのです。
3.使っていたFEPはエイトクでした。
4.ジャストシステムのホームページにFEPを使って漢字変換するときに必要となる
DLLがあります。
5.このDLLを使えばできると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- JavaScript javascriptで文字挿入でtoggleみたいなのはありますか? 2 2023/02/14 21:53
- Excel(エクセル) エクセルの条件付き書式 4 2023/04/17 11:05
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- 政治 私の発明した「二階建て漢字」は使えるでしょうか? 3 2023/02/08 16:40
- その他(Microsoft Office) wordの差し込み印刷での日付表示 2 2023/08/15 16:51
- その他(プログラミング・Web制作) ワードプレスのプラグインであるAddQuicktagを使いたいが… 3 2022/04/18 15:03
- Excel(エクセル) 【EXCEL】=セル&セルが上手く表示できない。 7 2022/09/04 21:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
メッセージボックスのボタン名変更
-
ACCESS側からEXCELの書式を設定...
-
Stack around the variable 'xx...
-
【KeyDown】キーコードについて
-
Loopとフリーズ
-
My Documentsディレクトリを
-
エクセルVBAでクリップボード内...
-
[VC++] AfxBeginThreadで生成し...
-
VBSの処理中一旦処理を止めて再...
-
WEB上にボタンが押せない
-
C#でチェックボックスボタンで...
-
結果待ちの関数を強制終了
-
vb.netでバッチ処理
-
ASP VBScriptでスクリプト実行...
-
VBA kernel32 の意味
-
B列に特定の文字列が入っている...
-
VBSで応答不要のメッセージボッ...
-
【C#】 あるイベントから別イ...
-
thunderbirdのメッセージフィル...
-
エディットコントロールへの表示
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスのボタン名変更
-
VBSの処理中一旦処理を止めて再...
-
VBA kernel32 の意味
-
VBSで応答不要のメッセージボッ...
-
VBA メッセージボックスを自動...
-
ACCESS側からEXCELの書式を設定...
-
Application.ScreenUpdating=Fa...
-
エクセルVBAでクリップボード内...
-
Excel VBA で処理中断(DoEvents...
-
【C#】 あるイベントから別イ...
-
Excel VBA 自動的に閉じるMsgBox
-
VBA、UserFormを前面に出力して...
-
ASP.NETでのメッセージ画面を出...
-
マウスのクリックを無視したい
-
EXCEL VBA「Application.Displa...
-
B列に特定の文字列が入っている...
-
MFCのワーカースレッドとUIスレ...
-
VCでウエイトをミリ秒でかけ...
-
DoEvents
-
「キャンセル」ボタン付きの処...
おすすめ情報