ورود

View Full Version : ساخت منو(Menu) توسط کاربر



nasr
سه شنبه 16 مهر 1387, 06:46 صبح
سلام
من یک لیست باکس دارم که کاربر می تونه منوهایی که با اونها زیاد کار داره را به این اضافه کنه

حالا می خوام وقتی روی هرکدام از آیتمهای لیست باکس کلیک کرد همون کاری را که منو انجام میده انجام بدهد

ممنون

اصغر (پآچ)
سه شنبه 16 مهر 1387, 23:49 عصر
سلام دوست من

یه راه ساده بهت پیش نهاد میکنم اونم اینه که بیای منو هایی رو که داری تک تک چک کنی ببین کدوم عنوانش با آیتمی که کلیک شده توی لیست باکست یکیه بعد بیا رویداد OnClick منوی پیدا شده رو فراخوانی کن این ساده ترین راهیه که می تونی ازش استفاده کنی

موفق و موید باشی

carbon
پنج شنبه 18 مهر 1387, 04:07 صبح
سلام
من یک لیست باکس دارم که کاربر می تونه منوهایی که با اونها زیاد کار داره را به این اضافه کنه

حالا می خوام وقتی روی هرکدام از آیتمهای لیست باکس کلیک کرد همون کاری را که منو انجام میده انجام بدهد

ممنون

فكر كنم اين كارتو راه بندازه



procedure TForm1.ListBox1Click(Sender: TObject);
var
x,y: integer;
begin
for x := 0 to Menu.Items.Count-1 do
begin
for y := 0 to menu.Items[x].Count-1 do
begin
if ('&'+ListBox1.Items[ListBox1.ItemIndex] = menu.Items[x].Items[y].Caption) or (ListBox1.Items[ListBox1.ItemIndex] = menu.Items[x].Items[y].Caption) then
menu.Items[x].Items[y].Click;
end;
end;
end;

مشكل شما اينه كه مياي كپشن منو رو توي listbox وارد مي كني پس براي فهميدن اينكه وقتي روي listbox كليك شد كدوم منو رو كليك كنيم بايد كپشن تمام منو ها رو با مقدار انتخاب شده در listbox‌مقايسه كنيم.
اين كار يه ايراد داره اونم اينكه اگر دو كپشن يكسان در منوهاتون داشته باشيد با هم قاطي ميشه يعني هر دو كليك ميشه. البته اونم قابل حله.