Wie kann ich beim Memo gegenprüfen ob eine Scrollbar aktiviert wurde?
Grundsätzlich verfügt ein memo ja über beide Scrollbars Horiz/Vert
Ich prüfe nun mit meinem Code ob diese zur verfügung stehen.
Das problem ist nur Sie werden auch erkannt wenn sie nicht unter Eigenschaften aktiviert wurden (Sichtbar sind).
Wie kann ich also gegenprüfen ob sie aktiviert wurden unabhängig vom Eigenschaftsdialog.
Zur besseren Verständigung hier noch was Code!
Delphi-Quellcode:
function THookedScrollbar.StoreVertical(WinHandle: HWND): Boolean;
var
State: Boolean;
begin
Result := False;
VScrInfo.cbSize := SizeOf(VScrInfo);
VScrInfo.fMask := SIF_ALL;
// ScrollBar vorhanden?
State := GetScrollInfo(WinHandle, Windows.SB_VERT, VScrInfo);
// keine ScrollBar vorhanden
if not State then
exit;
// Lese aktuelle Bar Parameter
VScrBar.cbSize := Sizeof(VScrBar);
GetScrollBarInfo(WinHandle, integer(OBJID_VSCROLL), VScrBar);
// kopiere den aktuellen Rect zur späteren bearbeitung
CopyRect(VertRect, VScrBar.rcScrollBar);
Result := True;
end;
State liefert immer True zurück egal ob unter Eigenschaften die Bars eingeschaltet wurden oder nicht!
gruss