login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Dialog (Opgelost)

Offline Redslash - 01/04/2009 16:30
Avatar van RedslashLid Ik heb een klein probleempje (denk ik) wat ik maar niet kan oplossen.

Ik heb namelijk een button gemaakt en een venster...( )
En ik heb een functie toegevoegd aan die button; hij opent een dialog.
Maar als ik bijvoorbeeld 100 keer op die button klik, dan opent ie ook 100 dialogen...

Dus hoe kan ik dit voorkomen? Het moet zoiets gaan doen:
Dialoog al geopend: dialoog sluiten
Dialoog gesloten?: dialoog openen

Voor als het nodig is: (Dit gebruik ik voor de button)
  1. Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
  2. Dim Status As New Dialog1()
  3. Status.Show()
  4.  
  5. End Sub


Alvast bedankt  

6 antwoorden

Gesponsorde links
Offline Wim - 01/04/2009 16:42
Avatar van Wim Crew algemeen Status defineren buiten je click-actie.

Je kan dan evt een boolean bijhouden of het venster geopend is of niet. (dit is mogelijk zelfs een property van je dialog)
Offline Redslash - 01/04/2009 18:29
Avatar van Redslash Lid En hoe doe ik dat ?
Sorry dat ik het vraag, maar ik heb Visual Basic nog maar een paar weken 
Offline Mario - 01/04/2009 19:57
Avatar van Mario Crew algemeen ipv Show gebruik je de ShowDialog

  1. Status.ShowDialog()


Greetzzz
RedThread
Offline Redslash - 02/04/2009 15:35 (laatste wijziging 02/04/2009 15:39)
Avatar van Redslash Lid Bedankt Het werkt ... Ik wist wel dat het zo simpel was 

Nog een vraagje.
Is er nog een andere manier om het dialoogje te verplaatsen (het programmatje starten en dan het dialoog openen) als je de FormBorderStyle hebt op weggelaten?
Offline Mario - 02/04/2009 16:16
Avatar van Mario Crew algemeen dat kun je op deze manier doen

  1. Dim drag As Boolean
  2. Dim mousex As Integer
  3. Dim mousey As Integer
  4.  
  5.  
  6. Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
  7. drag = True 'Sets the variable drag to true.
  8. mousex = Windows.Forms.Cursor.Position.X - Me.Left 'Sets variable mousex
  9. mousey = Windows.Forms.Cursor.Position.Y - Me.Top 'Sets variable mousey
  10. End Sub
  11.  
  12. Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
  13. If drag Then
  14. Me.Top = Windows.Forms.Cursor.Position.Y - mousey
  15. Me.Left = Windows.Forms.Cursor.Position.X - mousex
  16. End If
  17. End Sub
  18.  
  19. Private Sub Form1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp
  20. drag = False
  21. End Sub
Offline Redslash - 03/04/2009 17:21 (laatste wijziging 03/04/2009 17:22)
Avatar van Redslash Lid Nog eens bedankt Het enige wat ik nog aan je code moest veranderen was Form1 - Dialog1.

Want het hoofdscherm kon al verplaatst worden  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.186s