Hollosi Information eXchange /HIX/
HIX CODER 2444
Copyright (C) HIX
2007-03-10
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
1 Re: TComboBox (mind)  53 sor     (cikkei)

+ - Re: TComboBox (mind) VÁLASZ  Feladó: (cikkei)

Szevasztok!

Az volt az alapvető gondom, hogy nem tudtam üzenetet küldeni a TComboBox
editorának, hogy a selected-et, a kurzor helyét állítsam.
A manuálisan kiadott Home billentyűlenyomásra az történt amit akartam, 
de
SendMessage-val ugyanezt nem tudtam elérni, szinte semmilyen paraméterre 
nem
reagált.
Felmerült bennem, hogy talán nem jó helyről, nem jó időben küldöm az
üzenetet. Ez lett a megoldás!

Eddig a ComboBox-ba kattintást az OnEnter segítségével kaptam el és innen
küldtem az üzeneteket, amik hatástalanok voltak. Nagyrészt hatástalanok, 
és
pont ezért ragaszkodtam sokáig az OnEnter-hez.

Most viszont csináltam egy az Idle időben automatikusan meghívott
MyIdleHandler függvényt és innen már bármilyen üzenet elküldése megy!

Köszönöm a segítségeteket!

Cap

Akit esetleg érdekel a pofon egyszerű megoldás (:-) :

A header file-ban:

void __fastcall MyIdleHandler(TObject *, bool &);


A program file-ban:

// constructor-ban
Application->OnIdle = MyIdleHandler;
boolClickInEditor = false;


void __fastcall TFormRecord::ComboBoxMouseEnter(TObject *Sender)
{
boolClickInEditor = true; // Egérrel a ComboBox-ba kattintok
}


void __fastcall TFormRecord::MyIdleHandler(TObject *Sender, bool &Done)
{
if (boolClickInEditor)
  {
  boolClickInEditor = false;

  SendMessage(ComboBox->Handle, WM_KEYDOWN, VK_HOME, 0); // Home szimulálása
  } // if
}

AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS