Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Pytanie do znawców :) - Problem z COMBOBOXEX
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004
Pytanie do znawców :) - Problem z COMBOBOXEX

Witam

Mam pewien problem

Utworzyłem sobie kontrolkę ComboBoxEx:

Public Function CreateComboBoxEx() As Long
Dim cExHwnd As Long
Dim icex As InitCommonControlsExType

icex.dwSize = Len(icex)
icex.dwICC = ICC_USEREX_CLASSES
       
InitCommonControlsEx icex

CreateComboBoxEx = CreateWindowEx(0, "ComboBoxEx32", "", CBS_DROPDOWNLIST Or WS_BORDER Or WS_VISIBLE Or WS_CHILD, 8, 20, 250, 500, Form1.hwnd, ByVal 0&, App.hInstance, ByVal 0&

End Function


Jak widać po CBS_DROPDOWNLIST EditBox w Combo jest tylko do odczytu

Normalnie powinno być tak, ze gdy klikam EditBox'a lista pozycji "rozwija" się a gdy znowu kliknę EditBox'a powinna się "zwinąć".

I problem polega na tym, że gdy tak sobie klikam tego EditBoxa w pewnym momencie gdy lista jest rozwinięta kliknę znowu to sie "zwija" i zamiast pozostać w takim stanie rozwija się sama tak jakbym jeszcze raz kliknął na EditBox'a.

O co tu chodzi? - myszka jest dobra , wyłączyłem wszystkie inne funkcje związane z ComboBoxEx - pozostała tylko funkca tworząca go czyli ta podana wyżej.

Pozdrawiam

[Post edytowany dnia 08-10-2004 21:24 przez DJK]


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

08-10-2004 21:23
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Czyżby nikt nie znał odpowiedzi

Męczę się już z tym od tygodnia

Kombinuję z różnymi stałymi CB_CLOSEUP CB_SHOWDROPDOWN itd. i nic.

Może jakaś podpowiedź.

Pozdrawiam.


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

10-10-2004 17:14
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Zrobiłem coś takiego

Oczywiście po Subclassingu

Select Case Msg
    Case WM_COMMAND
      Select Case (wParam \ &H10000) And &HFFFF&

Case CB_DROPDOWN
Listview1.Listitems.add Text:="Rozwinięty"
Case CB_CLOSEUP
Listview1.Listitems.add Text:="Zwinięty"

I po kliknięciu na Edit Box w ComboBoxEx pojawia się:

Rozwinięty

Klikam drugi raz i pojawia się:

Zwinięty

Puszczam klawisz myszki i pojawia się:

Rozwinięty

Czemu ??

Tak jakby reagował na MouseUp a nie ma zadnych funkcji tylko ta jedna podana wcześniej.

I zauważyłem jeszcze ze gdy zanim puszczę klawisz myszki i lekko przesunę kursor lista juz nie rozwija sie czyli działa prawidłowo.

O co tu chodzi ???

Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

10-10-2004 19:42
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Zauważyłem, że gdy do mojego programu dodam manifest to problem z nika.

O co chodzi ??

Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

13-10-2004 15:49
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Postanowiłem odświeżyć trochę ten temat

Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

19-10-2004 20:45
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
Wszystkich odpowiedzi: 4 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1