View Full Version : حرفه ای: تغییر متن آیتمهای یک منو با گرفتن هندل آن
roox_3000
جمعه 21 تیر 1392, 02:11 صبح
با سلام خدمت دوستان
1_ منو در برنامه دیگر است و با getmenu() و getsubmenu() هندل آیتمهای مورد نظر از منو را میگیرم
مشکل :
برای تغییر متن (caption) آیتمها از چه تابعی استفاده میشود؟؟؟
با تشکر
roox_3000
جمعه 21 تیر 1392, 04:39 صبح
با استفاده از تابع ای پی آی ModifyMenu تونستم تکست یکی از آیتمارو عوض کنم اما کار باهاشو دقیق بلد نیستم و نمیتونم آیتم مورد نظرمو عوض کنم
از اساتید تقاضای راهنمایی در این مورد و دارم
اینم تعریف تابع اونه :
[DllImport("user32.dll")]
static extern bool ModifyMenu(IntPtr hMnu, uint uPosition, uint uFlags,
uint uIDNewItem, string lpNewItem);
با تشکر
roox_3000
جمعه 21 تیر 1392, 05:05 صبح
مشکل حل شد :
uint MF_BYCOMMAND = Convert.ToUInt32(0x00000000L);
IntPtr ee = FindWindowByCaption(IntPtr.Zero, "window title");
IntPtr df = GetMenu(ee);
IntPtr er = GetSubMenu(df, 0);//choice the submenu
uint POS = GetMenuItemID(er, 0);//choice the item of submenu
ModifyMenu(er,POS,MF_BYCOMMAND,POS, "wwwwwwwwwww");
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.