Function WindowScrollbars( wnd: HWND ): TScrollStyle; Var styleflags: DWORD; Begin styleflags:= GetWindowLong( wnd, GWL_STYLE ) and (WS_VSCROLL or WS_HSCROLL); Case styleflags Of 0 : Result := ssNone; WS_VSCROLL: Result := ssVertical; WS_HSCROLL: Result := ssHorizontal; Else Result := ssBoth; End; { Case } End; { WindowScrollbars }
procedure TForm1.Button1Click(Sender: TObject); begin if (WindowScrollbars(ListView1.Handle) ssVertical) or (WindowScrollbars(ListView1.Handle) ssBoth)then ShowMessage('la ScrollBar verticale est présente') else ShowMessage('la ScrollBar verticale est absente'); end;
function IsActiveScroll: boolean; begin if (Form1.ListView1.ViewStyle = VsList) or (Form1.ListView1.ViewStyle = VsReport) then Result := form1.ListView1.Items.Count > Form1.ListView1.VisibleRowCount; end;
function IsActiveScroll(MyList: TListView): boolean; begin with MyList do begin Result := false; if (ViewStyle = VsList) or (ViewStyle = VsReport) then Result := Items.Count > VisibleRowCount; end; end;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionVerfier si listview le scroll vertical est afficher ou pas ?
procedure TForm1.Button1Click(Sender: TObject); var SC: TScrollInfo; begin SC.cbSize := SizeOf(TSCROLLINFO); SC.fMask := SIF_ALL; if GetScrollInfo(ListView1.Handle, SB_VERT, SC) then ShowMessage('la ScrollBar verticale est présente') else ShowMessage('la ScrollBar verticale est absente') end;
Delphi 7 Win 7 integral 64 BIT
function IsActiveScroll(MyList: TListView): boolean; begin with MyList do begin Result := false; if (ViewStyle = VsList) or (ViewStyle = VsReport) then Result := Items.Count > VisibleRowCount; end; end;
procedure Button1Click(Sender: TObject); begin if IsActiveScroll(ListView1) then ShowMessage('la ScrollBar verticale est présente') else ShowMessage('la ScrollBar verticale est absente') end;
function WindowScrollbars(aWndHandle: HWND ): TScrollStyle; const WS_BSCROLL = WS_VSCROLL or WS_HSCROLL; begin case GetWindowLong(aWndHandle, GWL_STYLE) and WS_BSCROLL of WS_VSCROLL: Result := ssVertical; WS_HSCROLL: Result := ssHorizontal; WS_BSCROLL: Result := ssBoth; else Result := ssNone; end; end;
Mais en y regardant de plus près
tu n'as même pas utilisé mon bout de code !!!!