Zum Inhalt springen

CScrollView Scrollbars


Goos

Empfohlene Beiträge

Moin,

....ansich sollte das ja nicht so schwer sein, aber ich steh wohl grad aufm Schlauch und hoffe, dass mir jemand helfen kann.

Mein Problem ist folgendes:

In einer CScrollView werden ja nach Fenstergroesse und ZoomFaktor horizontale und/oder vertikale Scrollbars eingeblendet.

Ich wuerd nun gern wissen, wie ich erfahren kann, ob bzw. welche Scrollbars gerade aktiv sind.

Goos

Link zu diesem Kommentar
Auf anderen Seiten teilen

Naja, gemäß MFC ist CSrollview eine erbende Klasse von CView, oder?

Da kannst Du doch mit Deinem Object vom Typ CScrollView afragen, ob es aktiv ist poder nicht.

Als Rückgabewert bekommst Du dann ein TRUE oder FALSE!

Ich hab das so verstanden, dass Du immer abfragen willst, ob die Scrollbars da sind oder nicht, richtig?

Dann frag es doch ab, es ist doch eine Variante des CView!

Naja, zugegeben ist es über 4 Ecken, aber funzen müsste es vieleicht!

:P GREETZ :P

********

* Fiesek *

********

Link zu diesem Kommentar
Auf anderen Seiten teilen

Vielleicht sollt ich mein Problem aber auch anders schildern.

...ich versuchs mal.....

wenn man in einer CScrollview ScrollToPosition() aufruft, dann kann man bei vorhandnen Scrollbars im Bereich dieser Scrollbars scrollen, wenn aber keine Scrollbars vorhanden sind, weil das Dokument gerade zu klein ist, dann laesst sich halt nicht wie zu erwarten waere gar nicht scrollen, sondern man kann scrollen bis Australien (was nicht gut sein kann ;) )

Aus diesem Grund muss ich halt rausfinden, obs grad Scrollbars hat oder auch nicht.

Goos

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich meine das so:

erstelle dokument;

Wenn in Dokument Scrollviews aktiviert worden sind ( wenn Du welche aktiviert hast [OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView ) setze Varaiable a auf TRUE;

else FALSE;

dann if a==true

ScrollToPosition() ;

else

garnix!;

-ENDE-

:P GREETZ :P

********

* Fiesek *

********

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Goos

...ach und die Scrollbars sind keine CView Variante....die sind immernoch CScrollbars wuerd ich sagen.

Es ist vielmehr so, dass CScrollview von CView stammt und halt schon irgendwo die Scrollbars implementiert hat.

Goos

Richtig, und Du kannst Dir doch die Methoden Deiner base-class zunutze machen, wenn Du sagst: wenn es aktiviert wird, dann stze variable sonst nix!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich glaub du verstehst mich nicht *heul* ;) ...naja oder vielleicht auch umgekehrt *g*

Es bringt mir leider nix, zu wissen, dann meine CScrollview aktiv ist, denn ne CScrollview hat ja nicht zwingend Scrollbars, die scrollt ja auch nur, wenns noetig wird....also braeucht ich dann doch irgendwie den Status der Scrollbars, oder ich braeucht zumindest ne Methode um Pointer auf meine Scrollbars zu kriegen......leider hab ich da noch nix passendes gefunden.

Goos

So nu geh ich erstmal was essen....vielleicht bringt mich das ja dann auch schon weiter :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Klotzkopp

Über einen Vergleich der von GetTotalSize und GetClientRect gelieferten Werte sollte sich ermittlen lassen, ob die Scrollbalken angezeigt werden.

Du meinst also, aktuelle Auflösung verglichen mit der Dokumentgröße?

Das könnte ein Lösungsweg sein!

:P GREETZ :P

********

* Fiesek *

********

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...