
こんばんは。初心者です。プログラミングでたくさんわからないところがあります。
教えてくださるととても嬉しいです。
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で質問しましょう!
似たような質問が見つかりました
- Windows 7 更新プログラムを入れたら操作出来なくなりました(泣) 1 2023/02/26 11:04
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Excel(エクセル) エクセルVBA 任意のセルの選択時、指定のセルの値を表示 1 2023/04/21 08:13
- docomo(ドコモ) 携帯 arrows we の操作 4 2023/03/29 18:53
- Visual Basic(VBA) エクセルVBAのコードについて 2 2022/08/10 21:49
- Excel(エクセル) 指定値をマクロで検索&シート移動 2 2022/04/27 23:29
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- 一眼レフカメラ タムロン100-400mmとシグマ100-400mmで悩んでいます。 3 2022/04/25 16:10
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipseコンソール表示を、リセ...
-
*をユーザーが入力した数字の数...
-
java初心者です。入力されたの...
-
正負を反転させて出力するプロ...
-
数字以外が入力されたらエラー...
-
Excel VBAで、Application.Inpu...
-
C言語 While文(ループ)内の...
-
プログラムC言語の整数の約数に...
-
プログラミング初心者です。 Py...
-
UWSCで変数をキー入力
-
"scanf"でエンターで改行させな...
-
Eclipseでコマンドラインを入力...
-
getchar()について 教えてくだ...
-
4桁の数字以外を入力したらエラ...
-
Linuxプログラミングで、キーボ...
-
C言語の入出力関数の違い
-
ワードで文字を入力する時の変...
-
至急!! C言語で多数入力をま...
-
IF文で戻ることはできますか?...
-
入力エラーの処理について。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
数字以外が入力されたらエラー...
-
*をユーザーが入力した数字の数...
-
java初心者です。入力されたの...
-
正負を反転させて出力するプロ...
-
Eclipseコンソール表示を、リセ...
-
scanfが2回使えない・・・?;
-
プログラミング初心者です。 Py...
-
C言語でgetchar();が上手く使え...
-
Excel VBAで、Application.Inpu...
-
電卓の小数点
-
cout関数を使っているのですが...
-
"scanf"でエンターで改行させな...
-
小数か整数かを判定する方法
-
至急教えてください!プログラ...
-
getchar()について 教えてくだ...
-
scanf が無視されます
-
batプログラム上で文字列を入力...
-
コマンドプロンプトからのEOFの...
-
IF文で戻ることはできますか?...
-
プログラミングの問題です 「金...
おすすめ情報