Goos Geschrieben 13. September 2002 Geschrieben 13. September 2002 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
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 Grüß Dich! Hab ich das jetzt richtig verstanden, dass Du wissen willst an welchem Scrollbar der AW grade rumpopelt? GREETZ ******** * Fiesek * ********
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 Ne ich will wissen, welche Scrollbar gerade ueberhaupt vorhanden, bzw sichtbar ist. Kann ja auch mal passieren, das mein Dokument klein genug ist und ich dann keine Scrollbars hab. Goos
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 Schau Dir doch mal die class members von CView an, ich hab da eine Methode OnActivateView() gefunden, vieleicht kannst Du die ja für Deine Zwecke nutzbar machen. GREETZ ******** * Fiesek * ********
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 Muss ich jetzt verstehen, was du da meinst? Was bitte sollte ich mit ner OnActivateView Methode anfangen koennen?!? (...naja bei meinem Problem mein ich) :eek: ....erklaer doch mal, wie du das meinst.....vielleicht bringts ja doch was, wenngleich ich auch nicht daran glauben kann Goos
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 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! GREETZ ******** * Fiesek * ********
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 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
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 Ja, und ich hätte halt nach erstellen, des Dokumentes das Erstellen der Scrollbars in eine BOOL-Variablen gesetzt und diesen Wert für Deine Methodenausführung vorher abgefragt. GREETZ ******** * Fiesek * ********
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 Das waer wohl gut und schoen, wenn ich die Scrollbars auch irgendwie erstellen wuerde, aber das macht CScrollView ja von selbst. Das is doch das "praktische" an der Sache *g* Goos
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 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- GREETZ ******** * Fiesek * ********
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 ...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
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 .....und dummerweise komm ich halt irgendwie nicht an die Scrollbars ran Goos
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 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!
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 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
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 Hm, da ist was dran! Und wenn Du die Dinger per Hand da einbaust? (CSrollBar) GREETZ ******** * Fiesek * ********
Klotzkopp Geschrieben 13. September 2002 Geschrieben 13. September 2002 Über einen Vergleich der von GetTotalSize und GetClientRect gelieferten Werte sollte sich ermittlen lassen, ob die Scrollbalken angezeigt werden.
Fiesek Geschrieben 13. September 2002 Geschrieben 13. September 2002 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! GREETZ ******** * Fiesek * ********
Goos Geschrieben 13. September 2002 Autor Geschrieben 13. September 2002 Danke Klotzkopp.....so laesst sichs machen :OD ...und auch ein Dank an Fiesek fuer die Seitenweisen Bemuehungen Goos
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden