Grafzahl Geschrieben 9. August 2001 Geschrieben 9. August 2001 Hallo, ich hab ne ListBox. Via KeyDown frage ich ab, ob der Selektierte Eintrag der letzte ist. Ist dies der Fall will ich eigentlich wieder zum ersten springen. Dummerweise springt er von da zum zweiten. Wie kann ich das ändern? Oder wie stelle ich in VB die Fehlerbehandlung ab, so das er auch nen -1 als Index zu läßt? Zu Hülf! Danke! Zitieren
developer Geschrieben 10. August 2001 Geschrieben 10. August 2001 Komisch... :confused: Haste schonmal versucht, die Werte nicht direkt ins 1. Feld des Arrays zu schreiben, sonder ins 2. ( [1] ) ? Ist zwar nicht so 'die' Lösung, sollte aber doch klappen... Zitieren
E-Sorcerer Geschrieben 10. August 2001 Geschrieben 10. August 2001 Hmmm, klingt ja jetzt vielleicht blöd aber kann es nicht sein das er eigentlich ganau das tut was du willst...? Ich stell mir das so vor, du gehst mir der Pfeil nach unten Taste durch die Einträge, kommst beim letzten an, und fragst "Bist du der letzte Eintrag?". Daraufhin kommt zurück ja, und du springst zum ersten Eintrag. Da die eigentliche Aktion beim Drücken der Pfeiltaste aber noch gar nicht ausgeführt wurde macht er das als nächstes was er normalerweise tun würde, er geht einen Eintrag nach unten. Voilá, er steht auf dem 2. Eintrag. So würde ich mal überlegen. Klingt jetzt vielleicht ein bischen blöde formuliert, aber ich würde tippen das es so ist. Probiers' doch mal aus. Wenn ich recht habe, müßte das klappen wenn du eine andere Taste als die Pfeil nach unten Taste drückst während er auf dem letzten Listboxelement steht. Ich denke mal ich hab recht. Ich weiß das hilft dir nicht bei der Lösung des Problems, da kann ich dir auf Anhieb auch nix sagen. Wenn mir was einfällt poste ich es aber. Viel Glück ;-) Zitieren
Lecter Geschrieben 11. August 2001 Geschrieben 11. August 2001 Poste doch einfach mal deinen SourceCode... Zitieren
Grafzahl Geschrieben 11. August 2001 Autor Geschrieben 11. August 2001 So hier der Quelltext: Private Sub Filmliste_KeyDown(keycode As Integer, shift As Integer) On Error GoTo Fehler If keycode = vbKeyDown And Filmliste.Selected(Filmliste.ListCount - 1) Then Filmliste.Selected(Filmliste.ListCount - 1) = False Filmliste.Selected(0) = True Exit Sub End If Exit Sub Fehler: If Err.Number = 381 Then Resume Next End If End Sub Aber E-Sorcerer hat Recht, so ist es. Aber das ist doch bescheiden, das wenn ich schon die Tastatur selber abfrage, daß das Programm nochmal ne Abfrage startet. Also kann/muß ich doch bestimmt irgendwie den Tastaturpuffer löschen, oder? Aber wie geht das? <FONT COLOR="#a62a2a" SIZE="1">[ 13. August 2001 07:44: Beitrag 1 mal editiert, zuletzt von Grafzahl ]</font> Zitieren
Empfohlene Beiträge
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.