「エディット」では普通の足し算はできませんでしたが、「スピンエディット」ではできました。そこで、まずは「エディット」から「スピンエディット」へのコピープログラムを作ってみましょう。次のようなフォームを作ってください。
コンポーネント | Name |
---|---|
左のエディット | Edit1 |
真中のスピンエディット | SpinEdit1 |
右のボタン | ButtonAdd |
下のようにプログラムを入力してください。
procedure TForm1.ButtonAddClick(Sender: TObject); begin SpinEdit1.Value := Edit1.Text; end;
実行してみましょう。
「'Integer' と 'TCaption' には互換性がありません」というエラーが出てしまいます。これは、「型が合いません」という意味のエラーです。
Delphi には、データを文字列型から整数型に変換する StrToInt() という命令があります。Edit1.Text を StrToInt() で包むと、データは整数型となり、SpinEdit1.Valueに代入できるようになります。
プログラムを次のように変更して実行してみてください。
procedure TForm1.ButtonAddClick(Sender: TObject); begin SpinEdit1.Value := StrToInt(Edit1.Text); end;
上のプログラムを改変して、逆に、スピンエディットからエディットに値を移すプログラムを作りましょう。この場合、StrToInt() ではなく IntToStr() という命令を使います。
StrToInt は String 型 To Integer 型 の略です。
IntToStr は Integer 型 To String 型 の略です。