dizzor
Goto Top

VB6 Per Doppelklick Bild laden

Ein schreibe ein kleines Übungsprogramm, in welchem ich einen Button habe, der einmal geklickt ein Bild lädt und bei doppeltem Klick ein anderes lädt.

Das Programm hat eine PictureBox und einen Command-Button. Wenn ich auf den Command-Button einmal klicke, soll in der PictureBox ein Bild aufgerufen werden. Vorher ist sie ja leer. Wenn ich den Command-Button aber doppelt anklicke, dann soll ein anderes Bild in der PictureBox aufgerufen werden. Ich würde hier gerne wissen, welchen Code bzw. welche Funktion ich dazu nutzen soll, denn picBildfeld.Picture = LoadPicture() funktioniert leider nicht in Verbindung mit cmdBildfeld_DblClick().

Damit ich kein neues Thema aufmachen muss, wollt ich im Anschluss nochmal 2 Fragen loswerden, die sich auch auf das Tool beziehen:
- Ich habe eine ListBox, in der untereinander zahlen stehen. Wenn ich eine Zahl lösche und das Feld quasi blank ist, stürtzt das Programm ab -> Laufzeitfehler 13, Typen unverträglich. Was muss ich einstellen, damit das nicht mehr passiert?

- Ich habe einen Command-Button, der sich bewegen soll, wenn ich mit der Maus über ihn fahre. Und zwar auf die rechte Seite des Fensters, da er sich in der linken unteren Ecke befindet. Leider habe ich keine Ahnung, wie ich da vorgehen soll.

Ich hoffe, ihr könnt mir bei meinen Punkten weiterhelfen face-smile

MfG

Content-Key: 120401

Url: https://administrator.de/contentid/120401

Printed on: April 24, 2024 at 22:04 o'clock

Member: TsukiSan
TsukiSan Jul 16, 2009 at 06:07:17 (UTC)
Goto Top
auch Hallo,

Frage1:
mit deinem CMD-Button könnte man auf bastlerische Weise so verbleiben:
Du integrierst noch einen Timer und setzt in auf FALSE und 150ms.
dann fügst du folgenden Schnipsel ein:
Dim Zahl
Private Sub Command1_Click()
Timer1.Enabled = False
Timer1.Enabled = True
Zahl = Zahl + 1
Select Case Zahl
    Case 1
    Picture1.Picture = LoadPicture("C:\Bild1")  
    Case 2
    Picture1.Picture = LoadPicture"C:\Bild2")  
End Select
End Sub

Private Sub Timer1_Timer()
 Zahl = 0
 Timer1.Enabled = False
End Sub
Die 150ms mußt du dir noch anpassen, wie schnell du doppelklickst

Frage2:
mit:
List1.RemoveItem (List1.ListIndex)
zum Beispiel wird bei mir der angewählte Eintrag in VB6 gelöscht und es entsteht keine Leerzeile. Welchen Befehl nimmst du?

Frage3:
mit:
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Ausgleich = 100
Command1.Left = Form1.Width - Command1.Width - Ausgleich
End Sub
kannst du den Knopf von links nach rechts wandern lassen. Der Ausgleich dient hierfür nur dazu, damit man vorgeben kann, wie weit vom rechten Rand des Fensters sich der Button befinden soll.

Ich hoffe es hilft.

Gruß
Tsuki