هذا الكود يحول بعض خصائص كل العناصر الموضوعة على النموذج (Form) الى كود برمجي .
دلفي تعليم :: منتديات البرمجة :: دلفي
صفحة 1 من اصل 1
هذا الكود يحول بعض خصائص كل العناصر الموضوعة على النموذج (Form) الى كود برمجي .
Delphi
كود دلفي
هذا الكود يحول بعض خصائص كل العناصر الموضوعة على النموذج (Form) الى كود برمجي .
أولا:
الطريقة هي ضع كل العناصر على الفورم ورتبهم بشكل الذي تريده .
ثم ضع ميمو على الفورم و نفذ الكود سيعرض في الميمو خصائص كل العناصر الموضوعة على الفورم و التي تم تحديدها في الكود.
ثانيا:
انسخ الكود الناتج في الميمو والصقه في الاجراء بوتو مثلا وضع العناصر على الفورم بشكل عشوائ و نفذ برنامج واضغط فوق البوتو
وشاهد كيف يرتب كما رتبتهم في المرة السابقة
ملاحظة
يجب تعديل حسب العناصر الموجودة عندك
الوحدة الثانية
ملاحظة:
اذا اردت ان تنشئ العناصر برمجيا استعمل هذه الطرقة
كود دلفي
هذا الكود يحول بعض خصائص كل العناصر الموضوعة على النموذج (Form) الى كود برمجي .
أولا:
الطريقة هي ضع كل العناصر على الفورم ورتبهم بشكل الذي تريده .
ثم ضع ميمو على الفورم و نفذ الكود سيعرض في الميمو خصائص كل العناصر الموضوعة على الفورم و التي تم تحديدها في الكود.
ثانيا:
انسخ الكود الناتج في الميمو والصقه في الاجراء بوتو مثلا وضع العناصر على الفورم بشكل عشوائ و نفذ برنامج واضغط فوق البوتو
وشاهد كيف يرتب كما رتبتهم في المرة السابقة
ملاحظة
يجب تعديل حسب العناصر الموجودة عندك
- الكود:
uses
Unit2;
procedure TForm1.Button1Click(Sender: TObject);
const
t01:array[0..10] of String =
('mrNone','mrOk','mrCancel','mrAbort','mrRetry',
'mrIgnore','mrYes','mrNo','mrAll','mrNoToAll','mrYesToAll');
t02 :array[0..10] of String = ('bkCustom', 'bkOK', 'bkCancel',
'bkHelp',
'bkYes', 'bkNo', 'bkClose','bkAbort', 'bkRetry', 'bkIgnore',
'bkAll');
t03:array[0..3] of String = ('blGlyphLeft', 'blGlyphRight',
'blGlyphTop', 'blGlyphBottom');
CBiDiMode:array[0..3] of String = ('bdLeftToRight',
'bdRightToLeft', 'bdRightToLeftNoAlign',
'bdRightToLeftReadingOnly');
t05: array[0..1] of String = ('htKeyword', 'htContext');
CAlignTab: array[0..6] of String = ('alNone', 'alTop',
'alBottom', 'alLeft',
'alRight', 'alClient', 'alCustom');
CAlignmentTab: array[0..2] of String = ('taLeftJustify',
'taRightJustify', 'taCenter');
CTextLayoutTab: array[0..2] of String = ('tlTop', 'tlCenter',
'tlBottom');
CEditCharCaseTab: array[0..2] of String = ('ecNormal',
'ecUpperCase', 'ecLowerCase');
CFontStyleTab: array[0..4] of String = ('[fsBold]', '[fsItalic]',
'[fsUnderline]', '[fsStrikeOut]', '[]');
CBorderStyleTab: array[0..1] of String = ('bsNone','bsSingle');
CFormBorderStyleTab: array[0..5] of String = ('bsNone',
'bsSingle', 'bsSizeable', 'bsDialog',
'bsToolWindow', 'bsSizeToolWin');
CPositionTab: array[0..7] of String = ('poDesigned', 'poDefault',
'poDefaultPosOnly', 'poDefaultSizeOnly','poScreenCenter',
'poDesktopCenter', 'poMainFormCenter', 'poOwnerFormCenter');
var
i: integer;
Ed1: TEdit;
Butn: TButton;
lbl1: TLabel;
BBtn: TBitBtn;
WinControl1: TWinControl;
CustomEdit1: TCustomEdit;
begin
Memo1.Clear;
Memo1.Lines.Add('Caption:='''+Caption+''';');
Memo1.Lines.Add('BiDiMode:='+CBiDiMode[GBiDiMode(BiDiMode)]+';');
Memo1.Lines.Add('font.charset:='+IntToStr(Font.Charset)+';');
Memo1.Lines.Add('font.name:='''+Font.Name+''';');
Memo1.Lines.Add('Left := '+inttostr(Left)+';');
Memo1.Lines.Add('Top := '+inttostr(Top)+';');
Memo1.Lines.Add('Height := '+inttostr(Height)+';');
Memo1.Lines.Add('Width := '+inttostr(Width)+';');
Memo1.Lines.Add('Position:='+CPositionTab[GPositions(Position)]
+';');
Memo1.Lines.Add('BorderStyle:='+CFormBorderStyleTab
[GFormBorderStyles(BorderStyle)]+';');
Memo1.Lines.Add('BorderWidth:='+inttostr(BorderWidth)+';');
Memo1.Lines.Add('font.Style:='+CFontStyleTab[GFontStyless
(Font.Style)]+';');
Memo1.Lines.Add('');
with Memo1.Lines do
for i := 0 to ComponentCount-1 do
begin
Add(Components[i].Name+'.Name := '''+Components[i].Name+''';');
Add(Components[i].Name+'.Left := '+IntToStr(Controls[i].Left)
+';');
Add(Components[i].Name+'.Top := '+IntToStr(Controls[i].Top)
+';');
Add(Components[i].Name+'.Height := '+IntToStr(Controls
[i].Height)+';');
Add(Components[i].Name+'.Width := '+IntToStr(Controls[i].Width)
+';');
Add(Components[i].Name+'.BiDiMode:= '+CBiDiMode[GBiDiMode
(Controls[i].BiDiMode)]+';');
Add(Components[i].Name+'.Cursor := '+CursorToString(Controls
[i].Cursor)+';');
Add(Components[i].Name+'.HelpContext := '+IntToStr(Controls
[i].HelpContext)+';');
Add(Components[i].Name+'.HelpType := '+t05[GHelpType(Controls
[i].HelpType)]+';');
Add(Components[i].Name+'.HelpKeyword := '''+Controls
[i].HelpKeyword+''';');
Add(Components[i].Name+'.Enabled := '+BoolToStr(Controls
[i].Enabled, True)+';');
Add(Components[i].Name+'.Hint := '''+Controls[i].Hint+''';');
Add(Components[i].Name+'.ShowHint := '+BoolToStr(Controls
[i].ShowHint, True)+';');
Add(Components[i].Name+'.Tag := '+IntToStr(Controls[i].Tag)
+';');
Add(Components[i].Name+'.Align := '+CAlignTab[GAligns(Controls
[i].Align)]+';');
Add(Components[i].Name+'.Visible := '+BoolToStr(Controls
[i].Visible, True)+';');
if Components[i] is TWinControl then
begin
WinControl1 := Components[i] as TWinControl;
Add(Components[i].Name+'.TabOrder := '+IntToStr
(WinControl1.TabOrder)+';');
Add(Components[i].Name+'.TabStop := '+BoolToStr
(WinControl1.TabStop, True)+';');
end;
if Components[i] is TLabel then
begin
lbl1 := Components[i] as TLabel;
Add(Components[i].Name+'.Caption := '''+lbl1.Caption+''';');
Add(Components[i].Name+'.Color := '+ColorToString(lbl1.Color)
+';');
Add(Components[i].Name+'.Font.Name :=
'''+lbl1.Font.Name+''';');
Add(Components[i].Name+'.Font.Charset := '+IntToStr
(lbl1.Font.Charset)+';');
Add(Components[i].Name+'.Font.Color := '+ColorToString
(lbl1.Font.Color)+';');
Add(Components[i].Name+'.Font.Size := '+IntToStr
(lbl1.Font.Size)+';');
Add(Components[i].Name+'.Font.Style := '+CFontStyleTab
[GFontStyless(lbl1.Font.Style)]+';');
Add(Components[i].Name+'.Alignment := '+CAlignmentTab
[GAlignments(lbl1.Alignment)]+';');
Add(Components[i].Name+'.Layout := '+CTextLayoutTab
[GTextLayouts(lbl1.Layout)]+';');
Add(Components[i].Name+'.AutoSize := '+BoolToStr(lbl1.AutoSize,
True)+';');
Add(Components[i].Name+'.ParentBiDiMode := '+BoolToStr
(lbl1.ParentBiDiMode, True)+';');
Add(Components[i].Name+'.ParentColor := '+BoolToStr
(lbl1.ParentColor, True)+';');
Add(Components[i].Name+'.ParentFont := '+BoolToStr
(lbl1.ParentFont, True)+';');
Add(Components[i].Name+'.ParentShowHint := '+BoolToStr
(lbl1.ParentShowHint, True)+';');
Add(Components[i].Name+'.ShowAccelChar := '+BoolToStr
(lbl1.ShowAccelChar, True)+';');
Add(Components[i].Name+'.Transparent := '+BoolToStr
(lbl1.Transparent, True)+';');
Add(Components[i].Name+'.WordWrap := '+BoolToStr(lbl1.WordWrap,
True)+';');
end;
if Components[i] is TEdit then
begin
Ed1 := Components[i] as TEdit;
Add(Components[i].Name+'.Text := '''+Ed1.Text+''';');
Add(Components[i].Name+'.PasswordChar := '+GPasswordChars(Ed1)
+';');
Add(Components[i].Name+'.Color := '+ColorToString(Ed1.Color)
+';');
Add(Components[i].Name+'.Font.Name := '''+Ed1.Font.Name+''';');
Add(Components[i].Name+'.Font.Charset := '+IntToStr
(lbl1.Font.Charset)+';');
Add(Components[i].Name+'.Font.Color := '+ColorToString
(Ed1.Font.Color)+';');
Add(Components[i].Name+'.Font.Size := '+IntToStr
(Ed1.Font.Size)+';');
Add(Components[i].Name+'.MaxLength := '+IntToStr
(Ed1.MaxLength)+';');
Add(Components[i].Name+'.BorderStyle := '+CBorderStyleTab
[GBorderStyles(Ed1.BorderStyle)]+';');
Add(Components[i].Name+'.Font.Style := '+CFontStyleTab
[GFontStyless(lbl1.Font.Style)]+';');
Add(Components[i].Name+'.CharCase:= '+CEditCharCaseTab
[GEditCharCases(Ed1.CharCase)]+';');
Add(Components[i].Name+'.MaxLength := '+IntToStr
(Ed1.MaxLength)+';');
Add(Components[i].Name+'.AutoSelect := '+BoolToStr
(Ed1.AutoSelect, True)+';');
Add(Components[i].Name+'.ReadOnly := '+BoolToStr(Ed1.ReadOnly,
True)+';');
Add(Components[i].Name+'.AutoSize := '+BoolToStr(Ed1.AutoSize,
True)+';');
Add(Components[i].Name+'.HideSelection := '+BoolToStr
(Ed1.HideSelection, True)+';');
Add(Components[i].Name+'.ParentBiDiMode := '+BoolToStr
(Ed1.ParentBiDiMode, True)+';');
Add(Components[i].Name+'.ParentColor := '+BoolToStr
(Ed1.ParentColor, True)+';');
Add(Components[i].Name+'.ParentFont := '+BoolToStr
(Ed1.ParentFont, True)+';');
Add(Components[i].Name+'.ParentShowHint := '+BoolToStr
(Ed1.ParentShowHint, True)+';');
end;
if Components[i] is TButton then
begin
Butn := Components[i] as TButton;
Add(Components[i].Name+'.Caption := '''+Butn.Caption+''';');
Add(Components[i].Name+'.Font.Name :=
'''+Butn.Font.Name+''';');
Add(Components[i].Name+'.Font.Charset := '+IntToStr
(Butn.Font.Charset)+';');
Add(Components[i].Name+'.Font.Color := '+ColorToString
(Butn.Font.Color)+';');
Add(Components[i].Name+'.Font.Size := '+IntToStr
(Butn.Font.Size)+';');
Add(Components[i].Name+'.Font.Style := '+CFontStyleTab
[GFontStyless(Butn.Font.Style)]+';');
Add(Components[i].Name+'.ModalResult := '+t01
[Butn.ModalResult]+';');
Add(Components[i].Name+'.Cancel := '+BoolToStr(Butn.Cancel,
True)+';');
Add(Components[i].Name+'.ParentBiDiMode := '+BoolToStr
(Butn.ParentBiDiMode, True)+';');
Add(Components[i].Name+'.ParentFont := '+BoolToStr
(Butn.ParentFont, True)+';');
Add(Components[i].Name+'.ParentShowHint := '+BoolToStr
(Butn.ParentShowHint, True)+';');
Add(Components[i].Name+'.WordWrap := '+BoolToStr(Butn.WordWrap,
True)+';');
if Components[i] is TBitBtn then
begin
Bbtn := Components[i] as TBitBtn;
Add(Components[i].Name+'.NumGlyphs := '+IntToStr
(Bbtn.NumGlyphs)+';');
Add(Components[i].Name+'.Kind := '+t02[GKind(Bbtn.Kind)]+';');
Add(Components[i].Name+'.Layout := '+t03[GLayout
(Bbtn.Layout)]+';');
end;
end;
end;
end;
- الكود:
unit Unit2;
interface
uses
Classes, Graphics, Controls, StdCtrls, Forms,
Buttons;
function GKind(Kinde: TBitBtnKind): Integer;
function GLayout(Layout1: TButtonLayout): Integer;
function GHelpType(HelpType1: THelpType): Integer;
function GBiDiMode(BiDiMode1: TBiDiMode): Integer;
function GAligns(Align1: TAlign): Integer;
function GAlignments(Alignment1: TAlignment): Integer;
function GTextLayouts(TextLayout1: TTextLayout): Integer;
function GEditCharCases(EditCharCase1: TEditCharCase): Integer;
function GFontStyless(FontStyles1: TFontStyles): Integer;
function GBorderStyles(BorderStyle1: TBorderStyle): Integer;
function GPasswordChars(edt: TEdit): string;
function GFormBorderStyles(FormBorderStyle1: TFormBorderStyle):
Integer;
function GPositions(Position1: TPosition): Integer;
implementation
function GKind;
begin
case Kinde of
bkCustom: Result := 0;
bkOK: Result := 1;
bkCancel: Result := 2;
bkHelp: Result := 3;
bkYes: Result := 4;
bkNo: Result := 5;
bkClose: Result := 6;
bkAbort: Result := 7;
bkRetry: Result := 8;
bkIgnore: Result :=9 ;
bkAll: Result := 10;
end;
end;
function GLayout;
begin
case Layout1 of
blGlyphLeft: Result:=0;
blGlyphRight: Result:=1;
blGlyphTop: Result:=2;
blGlyphBottom: Result:=3;
end;
end;
function GHelpType(HelpType1: THelpType): Integer;
begin //htContext
if HelpType1 = htKeyword then Result := 0 else Result := 1;
end;
function GBiDiMode(BiDiMode1: TBiDiMode): Integer;
begin
case BiDiMode1 of
bdLeftToRight: Result:=0; bdRightToLeft: Result:=1;
bdRightToLeftNoAlign: Result:=2;
bdRightToLeftReadingOnly: Result:=3;
end;
end;
function GAligns(Align1: TAlign): Integer;
begin
case Align1 of
alNone: Result:=0; alTop: Result:=1; alBottom: Result:=2;
alLeft: Result:=3; alRight: Result:=4; alClient: Result:=5;
alCustom: Result:=0;
end;
end;
function GAlignments(
Alignment1: TAlignment): Integer;
begin
case Alignment1 of
taLeftJustify: Result:=0; taRightJustify: Result:=1;
taCenter: Result:=2;
end;
end;
function GTextLayouts(
TextLayout1: TTextLayout): Integer;
begin
case TextLayout1 of
tlTop: Result:=0; tlCenter: Result:=1; tlBottom: Result:=2;
end;
end;
function GEditCharCases(
EditCharCase1: TEditCharCase): Integer;
begin
case EditCharCase1 of
ecNormal: Result:=0; ecUpperCase: Result:=1;
ecLowerCase: Result:=2;
end;
end;
function GFontStyless(
FontStyles1: TFontStyles): Integer;
begin
if FontStyles1 = [fsBold] then Result:=0
else if FontStyles1 = [fsItalic] then Result:=1
else if FontStyles1 = [fsUnderline] then Result:=2
else if FontStyles1 = [fsStrikeOut] then Result:=3 else
Result:=4;
end;
function GBorderStyles(
BorderStyle1: TBorderStyle): Integer;
begin
case BorderStyle1 of
bsNone: Result:=0;
bsSingle: Result:=1;
end;
end;
function GPasswordChars(edt: TEdit): string;
begin
if edt.PasswordChar='*' then Result:='*'
else Result:='#0';
end;
function GFormBorderStyles(
FormBorderStyle1: TFormBorderStyle): Integer;
begin
case FormBorderStyle1 of
bsNone: Result:=0;
bsSingle: Result:=1;
bsSizeable: Result:=2;
bsDialog: Result:=3;
bsToolWindow: Result:=4;
bsSizeToolWin: Result:=5;
end;
end;
function GPositions(Position1: TPosition): Integer;
begin
case Position1 of
poDesigned: Result:=0;
poDefault: Result:=1;
poDefaultPosOnly: Result:=2;
poDefaultSizeOnly: Result:=3;
poScreenCenter: Result:=4;
poDesktopCenter: Result:=5;
poMainFormCenter: Result:=6;
poOwnerFormCenter: Result:=7;
end;
end;
end.
ملاحظة:
اذا اردت ان تنشئ العناصر برمجيا استعمل هذه الطرقة
- الكود:
//uses ExtCtrls, StdCtrls;
procedure TForm1.FormCreate(Sender: TObject);
var Button1: tButton;
begin
Button1:= tButton.Create(self);
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] := Form1;
Button1.Parent := Panel1;
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] := GroupBox1;
end;
djelal- مبرمج مجتهد
- عدد المساهمات : 157
تاريخ التسجيل : 29/04/2015
مواضيع مماثلة
» عرض العناصر الموضوعة على الفورم وعددها
» اضافة الكائنات الموجودة فوق الفورم أو العناصر، وتحديد كائن من قائمة كومبوبوكس
» اين الخطأ في هذا الكود
» شرح برمجي مفصل لربـط قاعدة بيانات SQL Server مع Delphi
» كيف يمكن جعل الكتابة من أعلى الى أسفل فوق الفورم Form أو لابل أو اماج
» اضافة الكائنات الموجودة فوق الفورم أو العناصر، وتحديد كائن من قائمة كومبوبوكس
» اين الخطأ في هذا الكود
» شرح برمجي مفصل لربـط قاعدة بيانات SQL Server مع Delphi
» كيف يمكن جعل الكتابة من أعلى الى أسفل فوق الفورم Form أو لابل أو اماج
دلفي تعليم :: منتديات البرمجة :: دلفي
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى