こんばんは。初心者です。プログラミングでたくさんわからないところがあります。
教えてくださるととても嬉しいです。
1.複数のMemo(TMemo)コンポーネント間でカーソル入力をTButtonの操作で
移動させるにはどのようなプログラムをかけばよいでしょうか。
2.同じくTButtonの操作でカーソルを設定した位置に文字列を入力するには
どのようなプログラムを書けばよいでしょうか。
どなたかお返事いただけるのを心からお待ちしています。
できれば上記のような疑問を調べられる参考書・参考サイトも
教えてくださるとさらに嬉しいです。よろしくお願いいたします。
No.4ベストアンサー
- 回答日時:
1.複数のMemo(TMemo)コンポーネント間でカーソル入力をTButtonの操作で
移動させるにはどのようなプログラムをかけばよいでしょうか。
Focusedで今現在どこにフォーカスがあるかを判断してから、SetFocusで移動するMemoを指定すればいい。
ただし、TButtonを使うとクリックしたときそこにフォーカスが移ってしまうので、TButtonではなくTSpeendButtonを使用してください。
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if Memo1.Focused then
Memo2.SetFocus
else if Memo2.Focused then
Memo3.SetFocus
else
Memo1.SetFocus;
end;
2.同じくTButtonの操作でカーソルを設定した位置に文字列を入力するには
どのようなプログラムを書けばよいでしょうか。
これもTSpeendButtonのほうがいいです。
カーソルの位置はSelStartで調べられます。
Memo1に'ABCD'の4文字を追加する場合は、
procedure TForm1.SpeedButton2Click(Sender: TObject);
var
n: Integer;
begin
n := Memo1.SelStart;
Memo1.Text := Copy(Memo1.Text, 1, n) + 'ABCD' + Copy(Memo1.Text, n + 1, Length(Memo1.Text));
Memo1.SelStart := n + 4;
end;
ありがとうございます。
TSpeedButtonというコンポーネントはまだ手を付けていませんでした。とても役に立ちそうです。
参考にいたします。
No.3
- 回答日時:
あとは、Delphi Memo 使い方で検索すれば見つかると思います。
たとえば、0行目に'AAA'を入力するには
Memo1.Lines[0] := 'AAA';
追加するには
Memo1.Lines.Add( 'ABCあいう' ); // 1行づつ文字列をセット
とか。
No.2
- 回答日時:
SetFocusを使えば、入力するコンポーネントを移動できるみたいです。
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo2.SetFocus;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.SetFocus;
end;
No.1
- 回答日時:
詳しくは知らないのですが..
1.2はパス。詳しい人が教えてくれるでしょう。
掲示板はこれが一番だと思います。
http://hpcgi3.nifty.com/e-papy/DelphiBBS/wwwlng. …
(でも、私はつかれるのでやめました)
初心者用のサイトはこれかな
http://kakinotane.s7.xrea.com/delphi/d2/toc.html
参考書は私はXE用のを持ってますけど、お使いのDelphiのバージョンによって違うので、それを書いた方がいいのかな。
すぐに回答がほしいということですので。
あまり参考にならないかもしれませんけど。
すぐにお返事ありがとうございます。
回答は早くにいただければもちろん助かるのですが、
プログラムできるまで(自分でも努力していますが、リファレンスなど見つからず)
お返事続けていただければと思っています。
バージョン書き忘れました。Delphi7です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミング初心者です。 Py...
-
正負を反転させて出力するプロ...
-
VB.NETで16進数+16進数や16進...
-
scanf が無視されます
-
C言語・標準入力でquitを入力で...
-
C言語でのカレンダー作成
-
3つほどプログラムをおしえてく...
-
特定の文字が入力されるまで・・・
-
入力フォームのテキストボック...
-
C言語の非標準コンソール関数ge...
-
日付型のデータに変換するには!?
-
getcharをしながらwhile文で出...
-
至急教えてください!プログラ...
-
フローチャートについて
-
"gets"は危険なのでしょうか?
-
入力候補を表示させるには・・・?
-
*をユーザーが入力した数字の数...
-
c言語の数当てゲームプログラム...
-
C言語 ループの問題
-
数字以外が入力されたらエラー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
正負を反転させて出力するプロ...
-
プログラミング初心者です。 Py...
-
数字以外が入力されたらエラー...
-
Eclipseコンソール表示を、リセ...
-
Excel VBAで、Application.Inpu...
-
*をユーザーが入力した数字の数...
-
java初心者です。入力されたの...
-
Linuxで入力待ちなしkeyread関...
-
batプログラム上で文字列を入力...
-
WindowsでEOF
-
Userformの入力順序をタブオー...
-
コマンドプロンプトからのEOFの...
-
EDITコントロールで入力できる...
-
VisualStudio2019のコードアナ...
-
電卓の小数点
-
Eclipseでコマンドラインを入力...
-
小数か整数かを判定する方法
-
cout関数を使っているのですが...
-
UWSCで変数をキー入力
-
ワードで文字を入力する時の変...
おすすめ情報