Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by himitsu,
25. Okt 2011
Hintergrund ist Folgender:
procedure TComboBoxReadOnly.SetReadOnly(Value: Boolean);
begin
...
if HandleAllocated then
SendMessage(EditHandle, EM_SETREADONLY, Ord(Value), 0);
end;
Du setzt EM_SETREADONLY nur, wenn die interne Komponente vorhanden ist (HandleAllocated=True), was ja vollkommen korrekt ist.
Ist die interne Komponente da aber noch nicht vorhanden, oder wird sie...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by himitsu,
24. Okt 2011
stümmt, das ist nicht virtual/dynamic, aber
CreateWnd und CreateWindowHandle sind virtual und protected ... an eines davon kommt man also recht einfach ran
RecreateWnd sendet (zumindest in D2010) nur ein CM_RECREATEWND ab (welches man abfangen könnte) und auch nur, wenn das Fenster wirklich existiert.
Ein nichtexistierendes Fenster wird nicht (neu) erstellt.