Hot News:

Unser Angebot:

  Foren auf CAD.de
  VBasic / vb.net / vbs / wsh
  VB.Net : Timer--> Form schließen einen anderen öffnen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
Autor Thema:  VB.Net : Timer--> Form schließen einen anderen öffnen (15006 mal gelesen)
Feyza
Mitglied



Sehen Sie sich das Profil von Feyza an!   Senden Sie eine Private Message an Feyza  Schreiben Sie einen Gästebucheintrag für Feyza

Beiträge: 605
Registriert: 12.01.2004

AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10
VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net

erstellt am: 23. Feb. 2006 11:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,

ich möchte gerne eine Form starten( frmStart), nach 10 Sekunden soll, diese Form sich schließen und ein anderer Form frmACAD sich öffnen.

Nur bei mir gehen beide gleichseitig auf und die Form frm Start schließt sich nicht.

Was muß ich in meinem COde ändern, dass er das macht, was ich mir vorstelle : ) ?!

VB.Net Code:

Private Sub Start_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' Run this procedure in an appropriate event.
        ' Set to 1 second.
        Timer1.Enabled = True
        Timer1.Interval = 10000
        ' Enable timer.
        Dim Form2 As New frmStart
        Form2.Close()
        Timer1.Enabled = False
        Dim Form1 As New frmACAD
        Form1.Show()
    End Sub

Danke für jede Unterstützung

Schöne Grüße
Feyza : )

------------------
     

[Diese Nachricht wurde von Feyza am 23. Feb. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BloodyMess
Mitglied
Applicationingenieur


Sehen Sie sich das Profil von BloodyMess an!   Senden Sie eine Private Message an BloodyMess  Schreiben Sie einen Gästebucheintrag für BloodyMess

Beiträge: 604
Registriert: 06.06.2002

AutoCAD Map 3D 2005 (SP2 & SP1) / Win XP pro (SP1) & Win 2000 pro (SP4)
AutoCAD Map 2000i / WinNT (SP6)

erstellt am: 23. Feb. 2006 11:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Hi Feyza,

schau Dir das Tick Event vom Timer an. Dies wird ausgelöst, wenn der Interval abgelaufen ist. Dort kannst dein Code platzieren. Musst halt den Timer1.enabled dann wieder auf false stellen, dass er nicht nochmal ausgelöst wird.

Grüssle TP

------------------

"Soll es funktionieren oder darf es auch etwas von Siemens sein?" ...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feyza
Mitglied



Sehen Sie sich das Profil von Feyza an!   Senden Sie eine Private Message an Feyza  Schreiben Sie einen Gästebucheintrag für Feyza

Beiträge: 605
Registriert: 12.01.2004

AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10
VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net

erstellt am: 23. Feb. 2006 12:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallöchen,

danke für Deinen Eintrag.

Ich habe den Timer jetzt so verwendet:

  Private Sub Start_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim Form3 As New frmACAD
        Form3.Visible = False
        ' Run this procedure in an appropriate event.
        ' Set to 1 second.
        Timer1.Enabled = True
        Timer1.Interval = 10000

    End Sub

    Private Sub Timer1_Tick(ByVal Sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
        ' Set the caption to the current time.
        Dim Form2 As New frmStart
        Form2.Close()
        Timer1.Enabled = False
        Dim Form1 As New frmACAD
        Form1.Visible = True
    End Sub

Jetzt geht mir die zweite Form nach meinen 10 sekunden auf.
Aber die erste Form schließt sich nicht.
Mit Close sollte er sich schließen.

Was muß man hier noch beachten?

Schöne Grüße
Feyza : )

------------------
   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BloodyMess
Mitglied
Applicationingenieur


Sehen Sie sich das Profil von BloodyMess an!   Senden Sie eine Private Message an BloodyMess  Schreiben Sie einen Gästebucheintrag für BloodyMess

Beiträge: 604
Registriert: 06.06.2002

AutoCAD Map 3D 2005 (SP2 & SP1) / Win XP pro (SP1) & Win 2000 pro (SP4)
AutoCAD Map 2000i / WinNT (SP6)

erstellt am: 23. Feb. 2006 12:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Hi Feyza,

er schliesst schon das Formular. Nur in deinen Augten nicht das Richtige. Mit 'Dim Form2 As New frmStart' legst Du ein neues Objekt vom Typ frmStart an, welches Du dann schliesst. Es wurde dem Objekt nie mitgeteilt, dass es aber das Objekt Form3 sein soll!
Entweder Du machst eine Übergabe an das Objekt, oder schreibst Dir eine Funktion/Klasse/Property - was auch immer - an die Du das Objekt(Form3) übergibst und im Tick Event legst Du das Objekt Form2 an und weisst diesem dann das Objekt(Form2) wieder zu.
... Möglichkeit über ein Property ...

Code:
Public Property getForm()
Get
Return m_frm_parent
End Get
Set(ByVal Value)
m_frm_parent = Value
End Set
End Property

... Man könnte es aber auch in einer globalen Variable Speichern, aber davon würde ich Dir abraten.

Grüssle TP

------------------

"Soll es funktionieren oder darf es auch etwas von Siemens sein?" ...

[Diese Nachricht wurde von BloodyMess am 23. Feb. 2006 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feyza
Mitglied



Sehen Sie sich das Profil von Feyza an!   Senden Sie eine Private Message an Feyza  Schreiben Sie einen Gästebucheintrag für Feyza

Beiträge: 605
Registriert: 12.01.2004

AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10
VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net

erstellt am: 23. Feb. 2006 13:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo TP,

ich habe das jetzt so umgestzt:

    Private Sub Start_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        ' Run this procedure in an appropriate event.
        ' Set to 1 second.
        Timer1.Enabled = True
        Timer1.Interval = 3000

    End Sub

    Private Sub Timer1_Tick(ByVal Sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
        ' Set the caption to the current time.

        Dim Form1 As New frmACAD
        Form1.Visible = True
        Timer1.Enabled = False
        Visible = False
    End Sub

und es funktioniert : )

Danke für Deine Unterstützung.

Schöne Grüße
Feyza : )

------------------
   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Frank_Schalla
Ehrenmitglied
CAD_SYSTEMBETREUER


Sehen Sie sich das Profil von Frank_Schalla an!   Senden Sie eine Private Message an Frank_Schalla  Schreiben Sie einen Gästebucheintrag für Frank_Schalla

Beiträge: 1732
Registriert: 06.04.2002

erstellt am: 20. Mai. 2006 07:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feyza 10 Unities + Antwort hilfreich

Ich war noch nie ein freund der Timer Funktion.
deshalb mal ein anderer Vorschlag find ich irgendwie .NETter
Public Sub splash_Load
        Dim splash_text As String
        Dim bar_value As Integer
        Dim Thread As New Threading.Thread(AddressOf splash_Load)
        Dim Main_splash As New splash
        Main_splash.Show()
        bar_value = 0
        splash_text = ("IV_ERP_TOOLS Loading")
        bar_value = bar_value + 10
        Main_splash.lbl_splash.Text = splash_text
        Main_splash.XtraProgressBar1.BarValue = bar_value
        Main_splash.XtraProgressBar1.Refresh()
        Main_splash.lbl_splash.Refresh()
        Main_splash.Label1.Refresh()
        Thread.Sleep(1500)
        Main_splash.dispose
        End Sub

------------------

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz