Hoge.text が'10'とします。
このHoge.textに1を足す場合
文字型 := IntToStr(StrtoInt(Hoge.text) + 1);
とするしかありませんか?
Str→Int→Srtが無駄に思えてしまうので。
無駄かもしれませんが、
それが労力や汎用性を考えるとかなり良い選択になると思います。
速度を求めるならまだまだ改善の余地は有りますが、
汎用性や労力に見合ったものをこれ以上だすのは至難の業だと思います。
無理やりやるとするなら
HogeNum: integer;
HogeNum := 10;
HogeNum := HogeNum + 1;
Hoge.Text ;= IntToStr(HogeNum);
のように、数値保存用の変数を用意して計算はそれに対して行い
表示の時にInt→Srtを行うとか。
ただこれも、HogeNumというある意味無駄な変数を使い
その管理をしなければならないので50歩100歩ですけど。
monaaさんの言うとおり、これ以外の状況や仕様などさまざまな要因により
効率の良い方法はいろいろ変わってくるでしょう。
了解しました。
その時々によって良い方法を使用していきたいと思います。
ありがとうございます。
こんなのもあるけど...
http://rakasaka.fc2web.com/delphi/nedit.html
もう解決済なので不要かな?
文字と文字を引数にして、文字を帰す、関数を作るってのは?
Memo1.Lines.Add( MojiCala(Hoge.text,'1') );
ってかんじに。
まぁ、作った関数内で、文字を数値に変換して、足して、戻り値にしているだけですが。
ツイート | ![]() |