AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TListbox -> Scrollbar visible?

Ein Thema von Jens Schumann · begonnen am 16. Dez 2004 · letzter Beitrag vom 20. Dez 2004
Antwort Antwort
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#1

TListbox -> Scrollbar visible?

  Alt 16. Dez 2004, 19:19
Hallo,
mit folgendem Code möchte ich den vertikalen Scrollbar einer TListbox
abfragen. GetLastError liefert jedoch 1447. Was bedeutet:
The window does not have scroll bars.

Die TListbox hat aber einen vertikalen Scrollbar. Ich kann ihn sehen.

Delphi-Quellcode:
procedure TForm1.ListBox1DblClick(Sender: TObject);
var
  ScrollBarInfo : TSCROLLBARINFO;
begin
  FillChar(ScrollBarInfo,SizeOf(TScrollBarInfo),0);
  ScrollBarInfo.cbSize:=SizeOf(TSCROLLBARINFO);
  GetScrollBarInfo(ListBox1.Handle,OBJID_VSCROLL,ScrollBarInfo);
end;
Letztendlich möchte ich feststellen ob der Scrollbar sichtbar ist oder nicht.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: TListbox -> Scrollbar visible?

  Alt 17. Dez 2004, 08:39
Hallo Jens,
an anderer Stelle habe ich einen Code zum Verstecken der Scrollbar gepostet,
mit
Delphi-Quellcode:
  style := GetWindowLong( handle, GWL_STYLE );
  if (style and WS_VSCROLL) <> 0 then
solltest Du die Abfrage machen können.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#3

Re: TListbox -> Scrollbar visible?

  Alt 17. Dez 2004, 16:01
Hallo,
Zitat von APP:
Hallo Jens,
an anderer Stelle habe ich einen Code zum Verstecken der Scrollbar gepostet,
mit
Delphi-Quellcode:
  style := GetWindowLong( handle, GWL_STYLE );
  if (style and WS_VSCROLL) <> 0 then
solltest Du die Abfrage machen können.
Ich wollte nicht wissen, wie man den Scrollbar unterdrückt, sondern ob er sichtbar ist?

Der folgende Code funktioniert.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  ScrollBarInfo : TSCROLLBARINFO;
  Ok : Boolean;
begin
  FillChar(ScrollBarInfo,SizeOf(TScrollBarInfo),0);
  ScrollBarInfo.cbSize:=SizeOf(TSCROLLBARINFO);
  Ok:=GetScrollBarInfo(ListBox1.Handle,OBJID_VSCROLL,ScrollBarInfo);
  If Not Ok then
    Label1.Caption:=IntToStr(GetLastError);
  If ScrollBarInfo.rgstate[0] AND STATE_SYSTEM_INVISIBLE=STATE_SYSTEM_INVISIBLE then
    Label2.Caption:='Unsichtbar'
      else
        Label2.Caption:='Sichtbar';
end;
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: TListbox -> Scrollbar visible?

  Alt 18. Dez 2004, 20:13
Hallo Jens,
Zitat von Jens Schumann:
Ich wollte nicht wissen, wie man den Scrollbar unterdrückt, sondern ob er sichtbar ist?
das war mir schon klar, aber ich dachte Du siehst im Code wie Du es benutzen kannst:

Delphi-Quellcode:
VAR
  Style : Integer;
BEGIN
  Style := GetWindowLong(Listbox1.Handle, GWL_STYLE);
  IF (Style AND WS_VSCROLL) <> 0 THEN
    ShowMessage('Scrollbar ist sichtbar')
  ELSE
    ShowMessage('Scrollbar ist unsichtbar');
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#5

Re: TListbox -> Scrollbar visible?

  Alt 20. Dez 2004, 06:29
Hallo,
Zitat von APP:
Hallo Jens,
Zitat von Jens Schumann:
Ich wollte nicht wissen, wie man den Scrollbar unterdrückt, sondern ob er sichtbar ist?
das war mir schon klar, aber ich dachte Du siehst im Code wie Du es benutzen kannst:

Delphi-Quellcode:
VAR
  Style : Integer;
BEGIN
  Style := GetWindowLong(Listbox1.Handle, GWL_STYLE);
  IF (Style AND WS_VSCROLL) <> 0 THEN
    ShowMessage('Scrollbar ist sichtbar')
  ELSE
    ShowMessage('Scrollbar ist unsichtbar');
oh - das habe ich so gar nicht bemerkt. Ich dachte mit dem Code legt man grundsätzlich fest, ob der Scrollbar sichtbar sein soll oder nicht.

Danke

[edit]Oh - man. Ich habe gerade in meinen Datensicherunge gesucht und genau Deinen Codevorschlag darin gefunden. Dateidatum ist vom 02.06.2001. Da bin ich wieder auf mein altes Problem gestoßen.
Ich habe mittlerweile so viel programmiert und in meinen Datensicherungen, dass ich machmal gar
nicht mehr weiss, dass ich ein Problem schon einmal gelöst hatte.[/edit]
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz