Nugroho's blog.: Playing with Memo in Delphi

Pages

Thursday, May 18, 2017

Playing with Memo in Delphi


I change the font in memo (tMemo) into courier. With this change, it's easy to do string manipulation with old Pascal style.

Below, I create small program with read input from edit into n variable. The input can only contain number 1 to 9.

The output is displayed on Memo. It's just number 123456789 (yeah, it has type string, but its number).

It's that all? No. The number's forming a 'cross' centered on number specified in edit. :)





Here's the code.

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    procedure proses;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure tform1.proses;
var   s:array[1..9]of string;
      c:string;
      i,j,n:integer;
begin
  memo1.Text:='';
  for i:=1 to 9 do begin
    for j:=1 to 9 do begin
      s[i]:=s[i]+' ';
    end;
  end;
  n:=strToInt(edit1.Text);
  for i:=1 to 9 do begin
    if i=n then begin
      for j:=1 to 9 do begin
        c:=intTostr(j);
        s[i][j]:=c[1];
      end;
    end else begin
      c:=intToStr(i);
      s[i][n]:=c[1];
    end;
    memo1.Lines.Append(s[i]);
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  memo1.Text:='';
  edit1.Text:='1';
  button1.Caption:='OK';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  proses;
end;

end.


.

No comments:

Post a Comment