Thema: Delphi Winproc ärger

Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#15

Re: Winproc ärger

  Alt 29. Jan 2009, 05:23
Zitat:
Wenn Du LBS_OWNERDRAWFIXED auskommentierst irgendwie kein Wunder, das die MSG nicht kommt
Ja stimmt hab es im nachhinein auch bemerkt.
LBS_OWNERDRAWFIXED hat auch kein problem verursacht sondern das zeichnen des Text über

Delphi-Quellcode:
DTP.cbSize := SizeOf(DTP);
    DrawTextEx(PDis.hDC, ItemText, l, PDis.rcItem, DT_LEFT
      or DT_VCENTER or DT_SINGLELINE, @DTP);
DrawTextEx will irgendwie nicht.
Hab mal ne kleine Anwendung in VB gemacht um das gegen zu prüfen da funktioniert alles
Unter Delphi will das nicht.

verwende jetzt
Delphi-Quellcode:
    ExtTextOut(PDis.hDC, 1 + PDis.rcItem.left,
      PDis.rcItem.Top, ETO_OPAQUE,
      @PDis.rcItem, PAnsiChar(ItemText), Length(ItemText), nil);
anstelle dessen.
Die Frage ist nur was besser ist.
Zitat:
Du kannst IMHO Windows nicht direkt zwingen so eine Nachricht zu generieren, das macht es, wenn was neu zu zeichnen ist.
Das ist klar ... hab mir schon gedacht das was fehlt siehe LBS_NOTIFY in verbindung mit LBN_DBLCLK
Geht ohne LBS_NOTIFY auch nicht

Zitat:
So mal geraten, der Ärger hat mit fehlendem WM_MEASUREITEM zu tun?
Benötige ich nur für das Menü und ist vorhanden.
Die Proc in der ListBox hab ich rausgeschmissen und leite die SubClass jetzt direkt auf
die Winproc der mainform um.

gruss Emil

EDIT:
Noch ein pic
Nur noch ein Bitmap für den Hintergrund der Listbox dann ist es fertig
Und noch was an den farben machen.
Miniaturansicht angehängter Grafiken
aufzeichnen_165.jpg  
  Mit Zitat antworten Zitat