المشاركات : 1,677
المواضيع 349
:
: 1,069
الإنتساب : Nov 2013
09-04-2017, 08:59 AM
(آخر تعديل لهذه المشاركة: 09-04-2017, 09:00 AM بواسطة Delphi4Us.)
السلام عليكم
في هذا المثال جرب ان تغير في اداة النص وجرب ان تغير الصورة
وجرب ان تغيير في موقع الادوات بسحبها من مكان الى اخر وانقر على الزر Save
تم شغل البرنامج من جديد
WriteComponent سيقوم بكل العمل عنك فهو يحفظ كل الخصائص للمكون
كود :
http://www.m5zn.com/d/?16623738
PHP كود :
هذا كل ما تحتاج لاجل ذلك
procedure TForm2.btn1Click(Sender: TObject);
Var
Stream: TFileStream;
begin
Stream := TFileStream.Create(ExtractFileDir(Application.ExeName) + '/mycomponent.dat', fmCreate);
try
Stream.WriteComponent(edt1);
Stream.WriteComponent(chk1);
Stream.WriteComponent(img1);
finally
Stream.Free;
End;
end;
procedure TForm2.FormCreate(Sender: TObject);
Var
Stream: TFileStream;
begin
Stream := TFileStream.Create(ExtractFileDir(Application.ExeName) + '/mycomponent.dat', fmOpenRead);
try
Stream.ReadComponent(edt1);
Stream.ReadComponent(chk1);
Stream.ReadComponent(img1);
finally
Stream.Free;
End;
end;
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
المشاركات : 553
المواضيع 49
:
: 296
الإنتساب : Dec 2008
وعليكم السلام ورحمة الله
بارك الله فيك
يمكن ايضا الاستغناء عن stream
كود :
WriteComponentResFile('ComboBox1.bin',ComboBox1);
ReadComponentResFile('ComboBox1.bin',ComboBox1);
الامتداد dat ليس مدعوما عندي انا استعمل bin ربما هو قياسي
لأستهلنّ الصعب أو أدرك المنى فما انقادت الآمال إلاّ لصابر
كل من 1 user says قال شكرا ل mobile على المشاركة المفيدة1 user says Thank You to mobile for this post
• Delphi4Us
المشاركات : 1,677
المواضيع 349
:
: 1,069
الإنتساب : Nov 2013
شكرا اخ موبايل على الاضافة
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
المشاركات : 89
المواضيع 4
:
: 1
الإنتساب : Jan 2012
السلام عليكم ورحمة الله و بركاته
منذ مدة فكرت في حفظ موقع و حجم المكونات على الفورم في ملف ini على هذا الشكل
كود :
[Image2]
Left=224
Top=208
Width=169
Height=57
[Edit1]
Left=40
Top=184
Width=121
Height=21
[StringGrid1]
و قد تحصلت على مكون دلفي يقوم يغيير حجم المكونات وقت التشغيل و هذا باختيارهمن القائمة المنسدلة فيصبح قابل للتحريك و التحجيم
اسم المكون كان TSaveComps و هو مرفق مع الرد و معه ممثال للإستخدام
csavecomps.zip (الحجم : 246.63 ك ب / التحميلات : 76)
screen_shot.jpg (الحجم : 126.27 ك ب / التحميلات : 123)
المشاركات : 1,677
المواضيع 349
:
: 1,069
الإنتساب : Nov 2013
الاخ
[size=x-small]s[/size]eddik_xp
شكرا على المشاركة
ايضا هنا كود لتحريك يجعلك تستطيع ان تحرك المكونات وقت التشغيل
وهو بسيط جدا
كود :
Title: Move control at runtime
To move control at runtime use mouse events (capture mouse events to prevent default click processing):
type
TForm1 = class(TForm)
...
private
{ Private declarations }
Dragged: Boolean;
OldPos: TPoint;
...
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if RadioGroup1.ItemIndex=0 then
begin
Dragged:=True;
GetCursorPos(OldPos);
SetCapture(Button1.Handle);
end;
end;
procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
NewPos: TPoint;
begin
if Dragged then
with Button1 do
begin
GetCursorPos(NewPos);
Left:=Left-OldPos.X+NewPos.X;
Top:=Top-OldPos.Y+NewPos.Y;
OldPos:=NewPos;
end;
end;
procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Dragged then
begin
ReleaseCapture;
Dragged:=False;
end;
end;
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم