PDA

View Full Version : چگونگی از کار انداختم غلطک موس روی combobox



homayoon_fara
دوشنبه 06 مهر 1388, 10:47 صبح
سلام دوستان

چطوری میشه وقتی که فوکوس روی combobox هستش ، کاری کنیم که اگر کاربر غلطک موس رو چرخوند ، آیتم combobox عوض نشه؟

آخه این موضوع خیلی اذیت کنندست.

babakmomeni
دوشنبه 06 مهر 1388, 11:57 صبح
سلام دوستان

چطوری میشه وقتی که فوکوس روی combobox هستش ، کاری کنیم که اگر کاربر غلطک موس رو چرخوند ، آیتم combobox عوض نشه؟

آخه این موضوع خیلی اذیت کنندست.

سلام. کاملا حق با شماست. راهی که به نظرم رسیده بود اینه: توی رویدادهای فرم حامل کامبوباکس یکی هست به نام OnMouseWheel که شما می تونین این کد رو توش بذارین


if form1.ActiveControl=ComboBox1 then {اون کاری که می خواین در صورت ویل شدن موس روی کامبوباکس انجام بشه}

من مشکلم رو این جوری حل کردم. تا نظر بقیه اساتید چی باشه ...

Mahmood_M
دوشنبه 06 مهر 1388, 12:08 عصر
وقتی غلطک موس حرکت می کنه یک پیغام به برنامه ارسال میشه ، میتونید اون پیغام رو با استفاده از کامپوننت ApplicationEvents و در رویداد OnMessage مربوط به اون Handle کنید ...
مثال :
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if (Msg.message = WM_MOUSEWHEEL) and (Msg.hwnd = ComboBox1.Handle) then
begin
ApplicationEvents1.CancelDispatch;
Handled := True;
end;
end;

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