WinFuture-Forum.de: Vb .net 2k3 - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Vb .net 2k3 unfreiwillige aktion


#1 _Kalimann_

  • Gruppe: Gäste

geschrieben 16. Dezember 2004 - 10:12

moin...

wenn ich in VB nen neues fenster öffnen möchte handhabe ich das sp

Zitat

Dim Fenster As New Fenster
Fenster.Show()


Funzt auch soweit alles bestens... nur, kann cih das fenster zich tausens mal öffnen und das nervt. :unsure: wie kann ich, wenn das fenster offen ist, sperren das das fenster weitere male geöffnet werden kann? (ich hoffe es ist vertsändlich was ich meine -.-

danke schonmal
0

Anzeige



#2 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 16. Dezember 2004 - 12:17

Hm, du könntest bevor die Öffnen-Aktion durchgeführt wird, eine Try-Catch-schleife bauen, in der du eine Variable auf das Fenster zuweist.
Wenn das fehlschlägt, weißt du, dass das Fenster noch nicht offen ist, und dann baust du bei Catch ex As Exception eben den Öffnen-Handler ein.
0

#3 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 16. Dezember 2004 - 12:43

kannst du mal deinen ganzen quellcode posten. Ich würde drauf tippen, dass du deinen code in einem event (bsp: PaintEvent) stehen hast, das von windows mehrmals aufgerufen wird...
0

#4 _Kalimann_

  • Gruppe: Gäste

geschrieben 16. Dezember 2004 - 12:47

also das fing kommt ausm MainMenu ind sieht komplett einfach nur so aus

Zitat

    Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click
        Dim Fenster As New Fenster
        Fenster.Show()
    End Sub


Zitat

in der du eine Variable auf das Fenster zuweist.

ja und wie geht das? :)

Dieser Beitrag wurde von Kalimann bearbeitet: 16. Dezember 2004 - 12:47

0

#5 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 16. Dezember 2004 - 12:50

ach...sorry! Ich hab grad verstanden, dass das Fenster sich mehrmals öffnet :)
Ich überleg mal weiter... :)
0

#6 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 16. Dezember 2004 - 12:57

Zitat (Kalimann: 16.12.2004, 12:47)

also das fing kommt ausm MainMenu ind sieht  komplett einfach nur so aus
ja und wie geht das? :)
<{POST_SNAPBACK}>

Also, ich habe das mal ausprobier, so gehts:
Public Class Form1
    Inherits System.Windows.Forms.Form

    Public f2 As Form2

....

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            f2.Text = "I 00wn yu0"
        Catch s As Exception
            f2 = New Form2
            f2.Show()
        End Try
    End Sub
End Class

Anstatt Form2 musst du halt den Namen des zu öffnenden Fensters angeben.
0

#7 _Kalimann_

  • Gruppe: Gäste

geschrieben 16. Dezember 2004 - 13:04

blubb verstansdne, es braucht alles nur seine zeit

Dieser Beitrag wurde von Kalimann bearbeitet: 16. Dezember 2004 - 13:10

0

#8 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 16. Dezember 2004 - 13:06

ist nur der Name des Fensters in der Titelleiste :)
0

#9 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 16. Dezember 2004 - 13:07

Zitat

das teil verstehe cih von vorne bis hinten nicht...
f2.Text = "I 00wn yu0"  <<< lol wartum das denn?
ich mach das nciht mit nem button ich mach das mit nem mainmenü


Oops, diese Zeile wollte ich entfernen. Das ist nichts anderes als eine Testzeile, die halt, wenn das Fenster bereits geöffnet ist, den Titel ändert.
Du brauchst nämlich irgendeine Aktion dort, beispielsweise könntest du die Visibility des Fensters nochmals auf "true" setzen.

Zitat

ich mach das nciht mit nem button ich mach das mit nem mainmenü

Dann kopierst du das halt in die Sub des Clickhandlers eines Buttons im Mainmenü!
0

#10 _Kalimann_

  • Gruppe: Gäste

geschrieben 16. Dezember 2004 - 13:11

jo vielen dank, habs geschafft ^^
man braucht nur imme nen bisschen bis mans hat :)

P.s. wohlbemerkt... de rbraucht ganz schön lange um das fenszer zu öffnen

Dieser Beitrag wurde von Kalimann bearbeitet: 16. Dezember 2004 - 13:16

0

#11 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 16. Dezember 2004 - 14:10

Zitat

P.s. wohlbemerkt... de rbraucht ganz schön lange um das fenszer zu öffnen

Naja, kein Wunder. Schließlich wird zuerst eine Aktion durchgeführt, die wenn das Fenster noch nicht existiert, normalerweise einen Fehler zurückgibt.

Diesen könnte man jetzt ja verarbeiten, oder wie es hier halt ist, einfach beheben, indem das Fenster erstellt wird.
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0