View Full Version : ایجاد کامپوننت کلاس TEdit
مجتبی جوادی
چهارشنبه 04 اسفند 1389, 18:16 عصر
دوستان سلام
من میخوام یک کامپوننت از کلاس TEdit ایجاد کنم که وقتی از Edit خارج میشم برنامه یک پیغام بدهد . حال میخواهم بدانم در کدام رویداد کلاس TEdit تغییرات را ایجاد کنم ؟ در DoExit ایجاد کردم ولی خطای زیر را میدهد:
Control 'NEdit1' has no parent window
ممنون
AliReza Vafakhah
چهارشنبه 04 اسفند 1389, 21:52 عصر
خوب میگه کنترل NEdit1 والدی نداره باید والد را بهحش اختصاص بدهید (Parent)
NEdit1.Parent:= Self
مجتبی جوادی
پنج شنبه 05 اسفند 1389, 20:02 عصر
ممنون از لطف شما
میشه بیشتر در موردش توضیح بدید که چطور باید این کار را بکنم
ممنون
AliReza Vafakhah
جمعه 06 اسفند 1389, 01:33 صبح
یک نموته براتون نوشتم ببینید چه طوریه
مجتبی جوادی
دوشنبه 23 اسفند 1389, 13:40 عصر
آقای وفاخواه ممنون از لطف شما . در مورد Edit ایراد کارم از جای دیگری بود و حل شد . یک مورد دیگر اینه من یک کامپوننت از کلاس DBLookupComboBox ایجاد کردم و میخواهم در رویداد Create آن نوع فونت و سایز آنر تعریف کنم ولی باز هم پیغام خطای Control '' has no parent window را می دهد . درصورتیکه همین کار را با Edit انجام دام و شد . ممنون میشم راهنمایی کنید
Felony
دوشنبه 23 اسفند 1389, 16:35 عصر
آقای وفاخواه ممنون از لطف شما . در مورد Edit ایراد کارم از جای دیگری بود و حل شد . یک مورد دیگر اینه من یک کامپوننت از کلاس DBLookupComboBox ایجاد کردم و میخواهم در رویداد Create آن نوع فونت و سایز آنر تعریف کنم ولی باز هم پیغام خطای Control '' has no parent window را می دهد . درصورتیکه همین کار را با Edit انجام دام و شد . ممنون میشم راهنمایی کنید
ما از کجا بدونیم چه کدی نوشتی و چی کار کردی تا مشکلت رو رفع کنیم ؟
مجتبی جوادی
دوشنبه 23 اسفند 1389, 17:12 عصر
اینم کدش
constructor TMyDBLookupComboBox.Create(AOwner: TComponent);
inherited Create(AOwner);
Font.Name:='Titr';
Font.Size:=12;
End;
Felony
دوشنبه 23 اسفند 1389, 18:25 عصر
اینم کدش
constructor TMyDBLookupComboBox.Create(AOwner: TComponent);
inherited Create(AOwner);
Font.Name:='Titr';
Font.Size:=12;
End;
این کد مشکلی نداره ، برای ساخت یک شئ از این کلاس به صورت زیر عمل کنید :
var
aCombo: TMyDBLookupComboBox;
begin
aCombo:= TMyDBLookupComboBox.Create(Self);
aCombo.Parent:= Self;
aCombo.Show;
end;
مجتبی جوادی
سه شنبه 24 اسفند 1389, 01:07 صبح
ولی این کد مشکل داره چون پیغام حطا مده! البته کد خودم !
Felony
سه شنبه 24 اسفند 1389, 06:07 صبح
یه نمونه برنامه که همچین مشکلی داشته باشه رو قرار بدید .
مجتبی جوادی
سه شنبه 24 اسفند 1389, 10:09 صبح
اینم کد یونیت
unit SunMaskEdit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Mask, ExtCtrls;
type
TSunMaskEdit = class(TMaskEdit)
private
{ Private declarations }
protected
{ Protected declarations }
public
{ Public declarations }
constructor Create(AOwner: TComponent); Override;
published
{ Published declarations }
end;
procedure Register;
implementation
constructor TSunMaskEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
Font.Name:='B Nazanin';
Font.Size:=12;
Font.Style:=[fsBold];
BiDiMode:=bdRightToLeft;
EditMask:='!99/99/99;0;_';
end;
procedure Register;
begin
RegisterComponents('www.Sun-e-Group.com', [TSunMaskEdit]);
end;
end.
این تغییرات روی BiDiMode و EditMask عمل میکنه ولی روی Font عمل نمی کنه و پیغام خطایی که گفتم را میده
ممنون
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.