AGB  ·  Datenschutz  ·  Impressum  







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

Scrollen mal anders...

Ein Thema von blackschof · begonnen am 7. Jan 2008 · letzter Beitrag vom 8. Jan 2008
Antwort Antwort
Seite 1 von 2  1 2      
blackschof

Registriert seit: 9. Jul 2007
4 Beiträge
 
#1

Scrollen mal anders...

  Alt 7. Jan 2008, 15:56
Hallo liebe Delphi-Community!

Ihr alle kennt sicher die Programme Itunes, Lightroom oder wenn ihr Mac besitzt ist das sowiso nichts neues für euch. Ich spreche vom Scrollverhalten dieser Programme... Man kann ganz einfach irgendwo scrollen, ohne zuerst auf das gewünschte Element zu klicken. Meistens muss man klicken und dann scrollen, hingegen wäre dieses "andere" verhalten ganz einfach "darüberfahren und scrollen".
Ich bin schon lange auf der Suche und hab auch selber ein wenig rumprobiert, aber bin zu keinem Schluss gekommen.
Hat jemand von euch schon so etwas programmiert bzw weis jemand wie das zu realisieren wäre?

Vielen Dank im voraus
blackschof
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Scrollen mal anders...

  Alt 7. Jan 2008, 16:02
könntest du für alle die es nicht kennen dieses scrollen beschreiben? vielleicht kann dir dann jemand helfen
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
7. Jan 2008, 16:03
Dieses Thema wurde von "SirThornberry" von "Library: VCL / WinForms / Controls" nach "VCL / WinForms / Controls" verschoben.
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Scrollen mal anders...

  Alt 7. Jan 2008, 16:04
hy, und willkommen in der dp!!

was genau willst du denn scrollen??

wenn du für selbiges element vllt schon eine scroll bar hast, kannst du die mauscoordinaten abfragen und die umwandeln in prozent des bildschirms, und danach dann deine scrollbar positionieren..

mfg
Martin
  Mit Zitat antworten Zitat
Benutzerbild von Aurelius
Aurelius

Registriert seit: 29. Jan 2007
Ort: Erfurt
753 Beiträge
 
Delphi 7 Personal
 
#5

Re: Scrollen mal anders...

  Alt 7. Jan 2008, 16:05
Versuch es doch mal so dass du im onMouseHover (onMouseOver) die Position des Mauszeigers auf der Scrollbar abfragst und dann die Position manuell ausrechnest und setzt (KA ob das funktioniert, ist eben nur eine Überlegung ^^)
Jonas
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Scrollen mal anders...

  Alt 7. Jan 2008, 16:24
Hi,

nicht so kompliziert leute er möchte doch anscheinend nur automatisch den fokus auf das element setzen, wo er mit der maus drüber fährt, also hilft wohl das hier:

Am beispiel einer checklistbox: Einfach das Ereginis OnMouseMove beschreiben mit folgendem Code:

Delphi-Quellcode:
procedure TForm1.clbBeispielChecklistBoxMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if not clbBeispielChecklistBox.Focused then
    clbBeispielChecklistBox.SetFocus;
end;

// EDIT
// Mit dieser leichten Änderung kannst du eine Funktion für alle WinControls nutzen
procedure TForm1.AutofocusMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if Sender is TWinControl then
    if not TWinControl(Sender).Focused then
      TWinControl(Sender).SetFocus;
end;

PS Willkommen in der
Ansgar
  Mit Zitat antworten Zitat
blackschof

Registriert seit: 9. Jul 2007
4 Beiträge
 
#7

Re: Scrollen mal anders...

  Alt 8. Jan 2008, 11:34
Danke an allen für die schnelle Hilfe!

@angos: danke, ich werde es gleich mal probiern!

@all: Das Scrollverfahren unterscheidet sich indem man ein beliebiges scrollbares Element (Scrollbar, Grid, ...) scrollen kann ohne zuerst darauf klicken zu müssen, sondern einfach mit der Maus darüberfährt (dann wird der Focus gesetzt(?)) und man kann das Element scrollen. Ich weiß nicht wie ich es besser beschreiben kann.
  Mit Zitat antworten Zitat
Delphi Star

Registriert seit: 4. Apr 2004
432 Beiträge
 
Delphi 2005 Personal
 
#8

Re: Scrollen mal anders...

  Alt 8. Jan 2008, 13:47
Meinst du es zufällig so, wie in dem Beispiel im Anhang?
Ist allerdings nicht besonders sauber gelöst, soll ja schnell gehen.
Ich habe einfach die Mausposition abgefragt und auf die Scrollbar übertragen.
Angehängte Dateien
Dateityp: exe scrollen_164.exe (372,5 KB, 21x aufgerufen)
Real programmers code in binary
SwapIt: Punkte
  Mit Zitat antworten Zitat
dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Scrollen mal anders...

  Alt 8. Jan 2008, 13:59
Zitat von Delphi Star:
Meinst du es zufällig so, wie in dem Beispiel im Anhang?
Wahrscheinlich nein.
Er will einfach nur ganz normal jenes Control scrollen können (mit dem Scrollrad an der Maus) über dem sich die Maus befindet, und nicht das welches gerade den Fokus hat.

Ich glaube mich sogar zu erinnern das man das in Windows einstellem kann?
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat
blackschof

Registriert seit: 9. Jul 2007
4 Beiträge
 
#10

Re: Scrollen mal anders...

  Alt 8. Jan 2008, 17:57
Mmh nein leider funktioniert alles nicht... Ich versuche das Problem erneut zu beschreiben.

http://www.blacksheep-online.net/beispiel.jpg

Also das Beispiel besteht aus einer Form mit zwei Lists und wie ihr sehen könnt, ist der Focus auf die rechte gesetzt. Nun möchte ich in der linken List scrollen können, indem ich mit der Maus darüberfahre und das Scrollrad betätige OHNE, wie gewöhnlich, zuerst auf die List zu klicken um überhaupt scrollen zu können. Könnt ihr es jetzt verstehen?

Danke nochmal.

mfg blackschof
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 22:10 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