المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : كيفية برمجة محرر بسيط بدلفي


طيباوي ابو علي1
2016-03-05, 20:41
بسم الله الرحمن الرحيم
كيفية برمجة محرر بسيط بدلفي

program Bloc_Note;{djelfa.info/vb}

uses
Forms,
Bloc in 'Bloc.pas' {Form1};{djelfa.info/vb}

{$R *.RES}

begin
Application.Initialize;{djelfa.info/vb}
Application.CreateForm(TForm1, Form1);{djelfa.info/vb}
Application.Run;{djelfa.info/vb}
end.

طيباوي ابو علي1
2016-03-05, 20:46
unit Bloc;{djelfa.info/vb}

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Menus, ExtCtrls, ComCtrls;{djelfa.info/vb}

type
TForm1 = class(TForm)
MainMenu1: TMainMenu;{djelfa.info/vb}
file1: TMenuItem;{djelfa.info/vb}
new1: TMenuItem;{djelfa.info/vb}
open1: TMenuItem;{djelfa.info/vb}
save1: TMenuItem;{djelfa.info/vb}
saveas1: TMenuItem;{djelfa.info/vb}
N1: TMenuItem;{djelfa.info/vb}
exit1: TMenuItem;{djelfa.info/vb}
edit1: TMenuItem;{djelfa.info/vb}
cut1: TMenuItem;{djelfa.info/vb}
copy1: TMenuItem;{djelfa.info/vb}
past1: TMenuItem;{djelfa.info/vb}
N2: TMenuItem;{djelfa.info/vb}
select1: TMenuItem;{djelfa.info/vb}
clear1: TMenuItem;{djelfa.info/vb}
help1: TMenuItem;{djelfa.info/vb}
Memo1: TMemo;{djelfa.info/vb}
OpenDialog1: TOpenDialog;{djelfa.info/vb}
SaveDialog1: TSaveDialog;{djelfa.info/vb}
StatusBar1: TStatusBar;{djelfa.info/vb}
Tools1: TMenuItem;{djelfa.info/vb}
Fonts1: TMenuItem;{djelfa.info/vb}
FontDialog1: TFontDialog;{djelfa.info/vb}
ColorDialog1: TColorDialog;{djelfa.info/vb}
Color1: TMenuItem;{djelfa.info/vb}
N3: TMenuItem;{djelfa.info/vb}
Left1: TMenuItem;{djelfa.info/vb}
Right1: TMenuItem;{djelfa.info/vb}
Center1: TMenuItem;{djelfa.info/vb}
N4: TMenuItem;{djelfa.info/vb}
DateTime1: TMenuItem;{djelfa.info/vb}
procedure new1Click(Sender: TObject);{djelfa.info/vb}
procedure open1Click(Sender: TObject);{djelfa.info/vb}
procedure save1Click(Sender: TObject);{djelfa.info/vb}
procedure saveas1Click(Sender: TObject);{djelfa.info/vb}
procedure exit1Click(Sender: TObject);{djelfa.info/vb}
procedure cut1Click(Sender: TObject);{djelfa.info/vb}
procedure copy1Click(Sender: TObject);{djelfa.info/vb}
procedure past1Click(Sender: TObject);{djelfa.info/vb}
procedure select1Click(Sender: TObject);{djelfa.info/vb}
procedure clear1Click(Sender: TObject);{djelfa.info/vb}
procedure Fonts1Click(Sender: TObject);{djelfa.info/vb}
procedure Color1Click(Sender: TObject);{djelfa.info/vb}
procedure FormCreate(Sender: TObject);{djelfa.info/vb}
procedure FormClose(Sender: TObject;{djelfa.info/vb} var Action: TCloseAction);{djelfa.info/vb}
procedure FormCloseQuery(Sender: TObject;{djelfa.info/vb} var CanClose: Boolean);{djelfa.info/vb}
procedure FormCloseMemos(Sender: TObject;{djelfa.info/vb} var int11: Integer);{djelfa.info/vb}
procedure Left1Click(Sender: TObject);{djelfa.info/vb}
procedure DateTime1Click(Sender: TObject);{djelfa.info/vb}
private
{ Déclarations privées }
PathName1: string;{djelfa.info/vb}
public
{ Déclarations publiques }
procedure Opene1(const BFileName: string);{djelfa.info/vb}
end;{djelfa.info/vb}
const
DefaultFileName1 = 'saad';{djelfa.info/vb}
var
Form1: TForm1;{djelfa.info/vb}

implementation

{$R *.DFM}

procedure TForm1.new1Click(Sender: TObject);{djelfa.info/vb}
var
intc: integer;{djelfa.info/vb}
begin
FormCloseMemos(Sender,intc);{djelfa.info/vb}
Memo1.Clear;{djelfa.info/vb}
Memo1.Modified := false;{djelfa.info/vb}
PathName1 := DefaultFileName1;{djelfa.info/vb}
Caption := PathName1;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.open1Click(Sender: TObject);{djelfa.info/vb}
begin
OpenDialog1.Title := 'فتح';{djelfa.info/vb}
if OpenDialog1.Execute then
Opene1(OpenDialog1.FileName);{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.Opene1(const BFileName: string);{djelfa.info/vb}
begin
PathName1 := BFileName;{djelfa.info/vb}
Caption := ExtractFileName(PathName1);{djelfa.info/vb}
Memo1.Lines.LoadFromFile(PathName1);{djelfa.info/vb}
Memo1.SelStart := 0;{djelfa.info/vb}
Memo1.Modified := false;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.save1Click(Sender: TObject);{djelfa.info/vb}
begin
if PathName1 = DefaultFileName1 then
saveas1Click(Sender)
else
begin
Memo1.Lines.SaveToFile(PathName1);{djelfa.info/vb}
Memo1.Modified := false;{djelfa.info/vb}
end;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.saveas1Click(Sender: TObject);{djelfa.info/vb}
begin
SaveDialog1.Title := 'حفـــظ بإســم';{djelfa.info/vb}
SaveDialog1.FileName := PathName1;{djelfa.info/vb}
if SaveDialog1.Execute then
begin
PathName1 := SaveDialog1.FileName;{djelfa.info/vb}
Caption := ExtractFileName(PathName1);{djelfa.info/vb}
save1Click(Sender);{djelfa.info/vb}
end;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.exit1Click(Sender: TObject);{djelfa.info/vb}
begin
close;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.cut1Click(Sender: TObject);{djelfa.info/vb}
begin
Memo1.CutToClipboard;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.copy1Click(Sender: TObject);{djelfa.info/vb}
begin
Memo1.CopyToClipboard;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.past1Click(Sender: TObject);{djelfa.info/vb}
begin
Memo1.PasteFromClipboard;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.select1Click(Sender: TObject);{djelfa.info/vb}
begin
Memo1.SelectAll;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.clear1Click(Sender: TObject);{djelfa.info/vb}
begin
Memo1.ClearSelection;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.Fonts1Click(Sender: TObject);{djelfa.info/vb}
begin
FontDialog1.Font := Memo1.Font;{djelfa.info/vb}
FontDialog1.Font.Color := Memo1.Font.Color;{djelfa.info/vb}
if FontDialog1.Execute then
begin
Memo1.Font := FontDialog1.Font;{djelfa.info/vb}
Memo1.Font.Color := FontDialog1.Font.Color;{djelfa.info/vb}
end;{djelfa.info/vb} //SelAttributes
end;{djelfa.info/vb}

procedure TForm1.Color1Click(Sender: TObject);{djelfa.info/vb}
begin
if ColorDialog1.Execute then
Memo1.Color := ColorDialog1.Color;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.FormCreate(Sender: TObject);{djelfa.info/vb}
begin
PathName1 := DefaultFileName1;{djelfa.info/vb}
Windows.LoadKeyboardLayout('00000401', klf_Activate);{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.FormClose(Sender: TObject;{djelfa.info/vb} var Action: TCloseAction);{djelfa.info/vb}
begin
Action := CaFree;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.FormCloseMemos(Sender: TObject;{djelfa.info/vb} var int11: Integer);{djelfa.info/vb}
const
tWarningText = 'هل تريــــد حفــظ التغييــرات على هـذا الملـف %s?';{djelfa.info/vb}
var
inta: integer;{djelfa.info/vb}
begin
if Memo1.Modified then
begin
inta := MessageDlg(Format(tWarningText, [PathName1]), mtConfirmation,
[mbYes, mbNo, mbCancel], 0);{djelfa.info/vb}
if inta = idYes then Save1Click(Sender);{djelfa.info/vb}
end;{djelfa.info/vb}
int11 := inta;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.FormCloseQuery(Sender: TObject;{djelfa.info/vb} var CanClose: Boolean);{djelfa.info/vb}
var
intb: integer;{djelfa.info/vb}
begin
FormCloseMemos(Sender, intb);{djelfa.info/vb}
if intb = idCancel then CanClose := false;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.Left1Click(Sender: TObject);{djelfa.info/vb}
begin
Left1.Checked := false;{djelfa.info/vb}
Right1.Checked := false;{djelfa.info/vb}
Center1.Checked := false;{djelfa.info/vb}
with Sender as TMenuItem do Checked := true;{djelfa.info/vb}
with Memo1 do
if Left1.Checked then Alignment := taLeftJustify
else if Right1.Checked then Alignment := taRightJustify
else if Center1.Checked then
Alignment := taCenter;{djelfa.info/vb}
end;{djelfa.info/vb}

procedure TForm1.DateTime1Click(Sender: TObject);{djelfa.info/vb}
begin
Memo1.Lines.Add(DateToStr(Date)+' , '+TimeToStr(Time));{djelfa.info/vb}
end;{djelfa.info/vb}

end.

طيباوي ابو علي1
2016-03-05, 20:49
النموذج

الاسم
Bloc.dfm


object Form1: TForm1
Left = 192
Top = 107
Width = 696
Height = 480
BiDiMode = bdRightToLeft
Color = clBtnFace
Font.Charset = ARABIC_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
Icon.Data = {
0000010001002020040000000000E802000016000000280000 00200000004000
00000100040000000000000200000000000000000000000000 00000000000000
00000000800000800000008080008000000080008000808000 0080808000C0C0
C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF00 00FFFFFF000000
00000000000000000000000000000007888888888888888888 8880800000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
F000000FFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
F000000FFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FF00000000000000000 0FF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FF00000000000000000 0FF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FF00000000000000000 0FF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FF00000000000000000 0FF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
F000000FFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
F000000FFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
F000000FFFFFFF0F000FF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
FFFFFFFFFFFFFFFFFFFFF8080000007FFFFFFFFFFFFFFFFFFF FFF8080000007F
0FF0FF0FF0FF0FF0FF0FF7080000007F0FF0FF0FF0FF0FF0FF 0FF70800000007
F77F77F77F77F77F77F77F7000000000000000000000000000 0000000000F000
001FE000000FC0000007C0000007C0000007C0000007C00000 07C0000007C000
0007C0000007C0000007C0000007C0000007C0000007C00000 07C0000007C000
0007C0000007C0000007C0000007C0000007C0000007C00000 07C0000007C000
0007C0000007C0000007C0000007C0000007C0000007E00000 0FF24924BF}
Menu = MainMenu1
OldCreateOrder = False
ParentBiDiMode = False
Position = poDesktopCenter
OnClose = FormClose
OnCloseQuery = FormCloseQuery
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Memo1: TMemo
Left = 0
Top = 0
Width = 688
Height = 407
Align = alClient
ScrollBars = ssBoth
TabOrder = 0
end
object StatusBar1: TStatusBar
Left = 0
Top = 407
Width = 688
Height = 19
Panels = <>
SimplePanel = False
end
object MainMenu1: TMainMenu
Left = 128
Top = 96
object file1: TMenuItem
Caption = '&'#1605#1604#1601
object new1: TMenuItem
Caption = '&'#1580#1583#1610#1583
ShortCut = 16462
OnClick = new1Click
end
object open1: TMenuItem
Caption = '&'#1601#1578#1581
ShortCut = 16463
OnClick = open1Click
end
object save1: TMenuItem
Caption = '&'#1581#1601#1592
ShortCut = 16467
OnClick = save1Click
end
object saveas1: TMenuItem
Caption = '&'#1581#1601#1592' '#1576#1575#1587#1605
OnClick = saveas1Click
end
object N1: TMenuItem
Caption = '-'
end
object exit1: TMenuItem
Caption = #1582#1585#1608#1580
ShortCut = 16499
OnClick = exit1Click
end
end
object edit1: TMenuItem
Caption = #1578#1581#1585#1610#1585
object cut1: TMenuItem
Caption = '&'#1602#1589
ShortCut = 16472
OnClick = cut1Click
end
object copy1: TMenuItem
Caption = '&'#1606#1587#1582
ShortCut = 16451
OnClick = copy1Click
end
object past1: TMenuItem
Caption = '&'#1604#1589#1602
ShortCut = 16470
OnClick = past1Click
end
object N2: TMenuItem
Caption = '-'
end
object select1: TMenuItem
Caption = #1578#1581#1583#1610#1583
ShortCut = 16449
OnClick = select1Click
end
object clear1: TMenuItem
Caption = #1605#1587#1581
OnClick = clear1Click
end
object N4: TMenuItem
Caption = '-'
end
object DateTime1: TMenuItem
Caption = #1578#1575#1585#1610#1582' '#1608#1575#1604#1608#1602#1578
OnClick = DateTime1Click
end
end
object Tools1: TMenuItem
Caption = '&'#1575#1593#1600#1600#1600#1583#1575#1583
object Fonts1: TMenuItem
Caption = '&'#1582#1600#1600#1600#1591
OnClick = Fonts1Click
end
object Color1: TMenuItem
Caption = '&'#1604#1600#1600#1600#1608#1606
OnClick = Color1Click
end
object N3: TMenuItem
Caption = '-'
end
object Left1: TMenuItem
Caption = 'Right'
OnClick = Left1Click
end
object Right1: TMenuItem
Caption = 'Left'
OnClick = Left1Click
end
object Center1: TMenuItem
Caption = 'Center'
OnClick = Left1Click
end
end
object help1: TMenuItem
Caption = #1605#1587#1575#1593#1583#1577
end
end
object OpenDialog1: TOpenDialog
DefaultExt = 'txt'
Filter = 'fichier texte|*.txt|tout les fichiers|*.*'
InitialDir = '.'
Left = 192
end
object SaveDialog1: TSaveDialog
DefaultExt = 'txt'
Filter = 'fichier texte|*.txt|tout les fichiers|*.*'
InitialDir = '.'
Left = 224
end
object FontDialog1: TFontDialog
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
MinFontSize = 0
MaxFontSize = 0
Left = 256
end
object ColorDialog1: TColorDialog
Ctl3D = True
Left = 288
end
end

محمد فلاك
2016-03-09, 04:21
الأحسن أخي رفع الملفات
وليس نسخ الكود ..
تشكر عموما

mohamed bouzid
2016-03-22, 08:33
الله يحفظك اخي

Mr-TNT
2016-03-23, 05:20
بارك الله فيك