سلام
از طریق کد نویسی چطور میشه به آیتمهای یک mainmenu آیتمهای جدید اضافه کرد
یا اینکه برای هر کدوم از آیتمها یک زیرمنو با آیتمهای جدید تعریف کرد
با تشکر
Printable View
سلام
از طریق کد نویسی چطور میشه به آیتمهای یک mainmenu آیتمهای جدید اضافه کرد
یا اینکه برای هر کدوم از آیتمها یک زیرمنو با آیتمهای جدید تعریف کرد
با تشکر
procedure TForm1.Button1Click(Sender: TObject);
var
M1 : TMenuItem;
begin
//Add a top-level menu item to MainMenu
M1 := TMenuItem.Create(Self);
M1.Caption := 'Tests';
with MainMenu1 do
begin
Items.Add(M1);
//Find a menu item and add a submenu to it
M1 := TMenuItem.Create(Self);
M1.Caption := 'Test 1';
Items.Find('Tests').Add(M1);
end;
end;
مرسی علی جون امتحان میکنم ببینم چی میشه
سلام
این سوال رو من قبلا مطرح کرده بودم
برای کامل شدن کد بالا لطفا بفرمائید بعد از تعریف یک آیتم برای منو چطور اجرای یک procedure رو به اون نسبت بدیم
با تشکر
می تونی از Action اون استفاده نمایید.
Procedure اونو باید قبلا تعریف کرده باشی و بعد هم
Procedure test(sender:Tobject);
begin
showmessage('test');
end;
M1.OnClick:=test
سلام
شما کد بالا رو تست کردید؟
من اجرا کردم خطا گرفت
اگر ممکنه کامل کنید
با تشکر
چه خطائی داد؟
تنها فرقی که این تابع با توابع تست شده من داره اینه که جزء کلاس نیست
اگه به صورت زیر باشه آره تست هم کردم
Procedure Tform1.test(sender:Tobject);
begin
showmessage('test');
end;
دقیقا مشکل همینه که اشاره کردید. "باید" تابع عضو کلاس باشد.نقل قول:
تنها فرقی که این تابع با توابع تست شده من داره اینه که جزء کلاس نیست
اگر تابع عضو فرم نباشه ، در آرگومنتاش Sender نباشه و یا به صورت Private تعریف بشه نمی توان در Eventها قرار داد ...
با احترام:نقل قول:
اگر تابع عضو فرم نباشه ، در آرگومنتاش Sender نباشه و یا به صورت Private تعریف بشه نمی توان در Eventها قرار داد ...
۱- تعریف تابع به صورت Private مشکلی پدید نمی آورد.
۲- نیازی نیست حتما تابع عضو فرم باشد. می تواند عضو هر کلاسی باشد.
سلام
متشکر از آقای جهرمی