さて、あとは、ファイル メニューですが、
ここはちと難しいです。
スマートな構造にするにはどうするか、今まさに考え中・・・
とりあえず、上書き保存 するためには、
「今開いているファイルのファイルパス」が わからないといけない
のです。
上書き保存、 とか 名前をつけて保存、
までは、サポートしてないわけっすね。
さて、「今開いているファイルのファイルパス」を覚えるために、
変数を一つ定義しましょうか。
ただの文字列型でおkです。
エディタウィンドウの、
var
Form1: TForm1;
というところに、
var
Form1: TForm1;
FilePath : String;
と、一つ追加してください。
var は、 変数宣言部分 で、
変数宣言は、
変数名 : 型 ;
でしたね。
String型の変数 FilePath を 定義して! って意味です。
String型というのは 文字列型 です。
文字列1行分のための変数でしたね。
特に工夫が要らないので、新規作成 部分を作りましょう。
バイナリデータを0からポチポチ入力する人なんて居ないと思いますが、
やっぱり新規作成はメニューにあるべきですよね?w
メニューから ファイル>新規作成 とクリックしてください。
でてきた部分に入力。
procedure TForm1.New1Click(Sender: TObject);
begin
//新しく作るんだからパスは未定。
FilePath:='';
//今書かれてるテキストをあぼーん。
Memo1.Clear;
end;
//で始まってる行はコメントでしたね。
プログラムとは関係ありません。
コンパイルして実行ファイルを作るときにはスルーされます。
FilePath := '' ;
ですが、「 := 」というのは、右辺の値を左辺の変数に入れろ!
という、「代入演算子」とか呼ばれる奴です。
C言語とかJAVAだと、代入は「=」なんですが、
Delphiで「=」は 等しい という意味の、「比較演算子」 なので、
代入は違うんですよね。
この「:」を忘れるとエラーが出ちゃいます。
他の言語の経験者は絶対このエラーを一度は出す!
で、FilePathは文字列型ですから、右辺も文字列でなければなりません。
プログラムで直接値を指定するとき、
「文字列はシングルクォートでくくる」というルールは覚えてましたか?
あれ? しかし、「''」とは、何もくくってませんね。
いえーす。何もくくらない=空っぽの文字列
という意味になり、代入する=値を消去 という意味なのです!
これで、ファイルパスが初期化できます。
その次の行はコメントですからスルーして、
Memo1.Clear;
はい、なんというか、そのまんまですが、
Memo1のclearを実行せよ、という意味で、
Clearというのは、書かれているテキストを全消しする手続きです。
これで新規作成ができました。
次から急に難しくなる悪寒・・・ でわ
コンテンツ
最新の12件
2023-06-12
2021-02-15
2013-06-19
2012-07-14
2012-02-04
2012-01-06
2011-03-31
2010-08-26
2010-03-15
2009-10-21
2009-02-12
2008-11-18
メニュー編集
- counter: 1013
- today: 1
- yesterday: 1
- online: 2