@ GerdW

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: @ GerdW
von: udo
Geschrieben am: 16.11.2003 00:41:36

Hallo Gerd,

zunächst mal ganz herzlichen Dank für deinen Entwurf, unter:

https://www.herber.de/forum/messages/338538.html

... bzgl. des Mouse Moves über den Image feldern.

Ich bin leider erst heut Abend dazugekommen , es zu testen, und denke das ich mich an die Anweisung von dir gehalten habe, aber es scheint leider noch nicht zu gehn bei mir.

Muss ich noch evt. Eigenschaftswerte der Imagefelder irgendwie einstellen ???

Habe :

Option Explicit
Declare Sub Sleep Lib "Kernel32" (ByVal Zeit As Long)
...in ein Modul gepackt, und den Rest im Tabellenblatt verankert.

Leider wird dann nur einfach gescrollt, und das auch erst bei Klick.
Also pro klick eine Zeile die gescrollt wird ???

Mach ich was falsch, ich denk mal du wirst es bei dir selbst ja bestimmt zum Laufen gebracht haben , komisch ???

Wäre dir sehr dankbar, wenn du dich kurz dazu mitteilen könntest, muss auch nicht noch heut Abend sein , wann es dir reinpasst , bin schon Gottfroh das
da Jemand wie du dabei überhaupt durchsteigt.
So perfekt sind meine VBA Kenntnisse leider noch nicht, weshalb ich halt nochn bissle Beistand bräuchte ;-)

Auf Jedenfall schonmal ein ganz herzliches Dankeschön an dich, das du deine Zeit hierfür geopfert hast , Danke.

Liebn Gruß, und gute Nacht

udo



Achso was mir noch einfällt, im Tabellenmodul der Tab. , in der das ganze dann funktionieren soll, da steht ebenfalls schon folgendes Makro für den Spinnbutton, der da noch drinnehängt.

Kolidieren die beiden Anweisungen vielleicht miteinander ???

Option Explicit
Public OldValue
Dim scr As Boolean


Private Sub SpinButton1_Change()
 If SpinButton1.Value < OldValue Then
    ActiveWindow.SmallScroll down:=1
    Else
    ActiveWindow.SmallScroll up:=1
    End If
    
    OldValue = SpinButton1.Value
    
End Sub



Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
  scr = True
  Sleep 500
  Do While scr = True
    ActiveWindow.SmallScroll down:=1
    Sleep 50
    DoEvents
  Loop
End If
End Sub





Private Sub Image1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  If Button = 1 Then scr = False
End Sub





Private Sub Image2_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
  scr = True
  Sleep 500
  Do While scr = True
    ActiveWindow.SmallScroll up:=1
    Sleep 50
    DoEvents
  Loop
End If
End Sub





Private Sub Image2_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  If Button = 1 Then scr = False
End Sub

Bild


Betrifft: AW: @ GerdW
von: GerdW
Geschrieben am: 16.11.2003 13:53:05

Du hast wahrscheinlich die andere Antwort nicht gelesen.
Mit MouseMove ist da nichts zu machen.
Es geht so wie im Beispiel mit MouseDown. Solange die
linke Maustaste gedrückt ist, wird gescrollt. Das ist
exakt das Verhalten eines normalen Spinbutton.
Dir gings ja wohl rein um die Optik und das bekommst
du ja mit meinem Beispiel hin.

Gerd


Bild


Betrifft: AW: @ GerdW
von: udo
Geschrieben am: 16.11.2003 14:29:44

Hallo Gerd, Danke dir sehr .

Habe es nun hinbekommen, mein Fehler.

Dass das ganze " nur " per Mousedown , also per Mausklick funktioniert, und nicht per
MouseMove, ist wirklich nicht so wichtig.

Die Darstellung ist eben Hauptthema bei der Einbindung in meine Tabelle.
Daher ganz arg dickes Dankeschön an dich.

Habe anfänglich eben nur zu kurz geklickt auf das Imagefeld, der Spinnbutton reagiert da etwas schneller, ist aber nicht schlimm.

Wenn ich also drauf klicke , und dann drauf bleibe auf dem Imagefeld, dann wird ein wenig zeitversetzt ( ca. halbe sek. ) dann nacheinander gescrollt.

Super , das hilft mir riesig weiter,

Schönen Sonntag noch, und Danke sehr nochmals

Gruß udo

( wenn ich dir mit ich weis nicht was auch vielleicht helfen könnte mussts nur sagen, auch wenns nicht unbedingt mit EXCEL was zu tun hätte, vielleicht gibts da das eine oder andere ??? Speziell in EXCEL erübrigt sich das wohl, aber vielleicht brauchst auf anderen Gebieten den einen oder anderen Entwurf, bei Themen die eher im gestalterischen zu suchen sind ..., liegt mir wiederum mehr ... udo-d@web.de)


Bild


Betrifft: AW: @ GerdW
von: GerdW
Geschrieben am: 16.11.2003 14:38:33

Du kannst den Wert bei Sleep von 500 auch verringern, nur 0 sollte
er nicht sein.

Gerd


Bild


Betrifft: AW: @ GerdW
von: udo
Geschrieben am: 16.11.2003 15:03:53

Hi Gerd, mensch super ...

Ich habs jetzt mal auf 50 gestellt, da ists genau richtig , Danke !!! , echt stark

Weist du zufällig ob man die Scrollgeschwindigkeit auch noch beeinflussen kann , nur der Neugierde halber ?

Bei der Lösung per Spinnbutton , kann man dies , wenn man den Delay Wert so ca. bis auf 10 einstellt beschleunigen, alles was da unter 10 geht wird langsamer, genauso wenn man über 10 geht zB. 50 , dann wird das Scrollen dort dann ebenfals langsamer ablaufen

Gruß udo


Bild


Betrifft: hat sich erledigt, habe es schon hinbekommen
von: udo
Geschrieben am: 16.11.2003 15:08:22

Danke Danke Danke, tausend Dank

hab die Geschwindigkeit beim 2. Sleepwert mal auf 10 gestellt, jetzt scrollt er schneller.

Ich werd mal versuchen diesn Scrollwert auf ein Zelle zu verweisen, sodass man nachher die Scrollgeschwindigkeit sich selbst anpassen kann.

Also machs mal gut, Danke dir und wie gesagt, wenn ich dir auch mal was gutes tun kann ( sofern ich dazu in der Lage wäre ), musst nur sagen ...

Lieben Gruß und noch einen schönen Sonntag

udo


Bild


Betrifft: eine letzte Frage hätt ich doch noch ...
von: udo
Geschrieben am: 16.11.2003 15:33:40

Gerd, ist es möglich das Bild das in dem Imagefeld dargestellt wird ebenfalls für den
Zeitraum wo man dann draufbleibt zu ändern, sprich für diese Zeit ein anderes dar zu stellen ?

Ich werde wenn ja, dann zwei Button bilder entwerfen, eines ungedrückt, und das andere gedrückt, so würde der visuelle Effekt besser dargestellt werden.

Dann wäre es super oberperfekt !!! trotzdem Danke, so ist wirklich schon riesig ...

Ich hab übrigens mal den zweiten Sleep Wert folgendermaßen verwiesen

Sleep cells(1,1).value

und den Wert in zelle A1 stell ich mal mit einem Spinnbutton ein ( oder eben auch mit Imagefeld mal zum testen ), dessen Wert ich min = 8 und max = 40 eingestellt hab, so kann man sich das scrollen nun noch hervorragend feineinstellen.

Echt klasse dein VBA ,...

Jetzt eben letztlich nur ´noch die Frage , was man noch mit einbinden müsste ,das für die Zeit während des Draufklickens auf einen der beiden Buttons noch dann das gedrückt dargestellte Buttonbild eingeblendet wird, und wenn ich aufhöre mit klicken , eben wieder das normale Buttonbildchen ?

Wenn das überhaupt möglich ist ? wenn nicht nicht so schlimm, bin wirklich so schon überaus begeistert von der Lösung.

Gruß udo


Bild


Betrifft: AW: eine letzte Frage hätt ich doch noch ...
von: GerdW
Geschrieben am: 17.11.2003 14:22:07

Hier ein Beispiel:
https://www.herber.de/bbs/user/1993.xls

Gerd


Bild


Betrifft: Woww, genial tausend Dank, du bist echt der
von: udo
Geschrieben am: 17.11.2003 17:58:35

Knaller ;-)

freu mich riesig .

Danke sehr Gerd, wirklich super, wie bereits erwähnt, wenn ich dir auch mal was helfen kann ( sofern ich dazu in der Lage bin ) brauchsts nur zu sagen.

Ganz arg dickes Dankeschön an dich

Gruß udo

udo-d@web.de


Bild

Beiträge aus den Excel-Beispielen zum Thema " alle Exceldateien der Festlatte auflisten"