سلام
از طریق کد نویسی چطور میشه به آیتمهای یک mainmenu آیتمهای جدید اضافه کرد
یا اینکه برای هر کدوم از آیتمها یک زیرمنو با آیتمهای جدید تعریف کرد
با تشکر
سلام
از طریق کد نویسی چطور میشه به آیتمهای یک 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
You never know what you can do until you try
سلام
شما کد بالا رو تست کردید؟
من اجرا کردم خطا گرفت
اگر ممکنه کامل کنید
با تشکر
چه خطائی داد؟
تنها فرقی که این تابع با توابع تست شده من داره اینه که جزء کلاس نیست
اگه به صورت زیر باشه آره تست هم کردم
Procedure Tform1.test(sender:Tobject);
begin
showmessage('test');
end;
You never know what you can do until you try
دقیقا مشکل همینه که اشاره کردید. "باید" تابع عضو کلاس باشد.تنها فرقی که این تابع با توابع تست شده من داره اینه که جزء کلاس نیست
اگر تابع عضو فرم نباشه ، در آرگومنتاش Sender نباشه و یا به صورت Private تعریف بشه نمی توان در Eventها قرار داد ...
با احترام:اگر تابع عضو فرم نباشه ، در آرگومنتاش Sender نباشه و یا به صورت Private تعریف بشه نمی توان در Eventها قرار داد ...
۱- تعریف تابع به صورت Private مشکلی پدید نمی آورد.
۲- نیازی نیست حتما تابع عضو فرم باشد. می تواند عضو هر کلاسی باشد.
سلام
متشکر از آقای جهرمی