Zum Inhalt springen

VB.Net: Messagebox zeitgesteuert


lakarando

Empfohlene Beiträge

Hallo,

wie kann ich eine Messagebox zeitgesteuert aurufen, so dass das Programm , wenn der Anwender auf eine Frage nicht reagiert, mit einer Default-Antwort weitermacht?

Ich denke mir, dass die normale MsgBox ungeeignet sein wird, wie löse ich es dann ? Eine eigene Form laden und per Timer wieder abschiessen ?

Danke schon mal

Gruss

Thoralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

nich zanken ;)

@MarkusLe

das klingt mir als die eleganteste Lösung, allerdings überfordert diese Grobbeschreibung die Dev-Kenntnisse eines Systemintegrators.

Hätteste villeicht ein paar Codebrocken für mich , damit mir die grundsätzliche Vorgehensweise klar wird ? Wär super.

Danke schon mal

Gruss

Thoralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

@Spachten

Es ist aufjedenfall nicht besonders schön einen Thread einfach abzuschießen. Wenn du es ganz sauber machen wolltest müsstest du natürlich noch zusätzlich einen Controller für die MessageBox schreiben.

@lakarando

Ich musste leider gerade feststellen das man von MessageBox nicht erben kann. Daher müsstest du dir wohl selbst nen kleinen Dialog zusammenklicken. Den kannst du dann ja wieder von einem Controller steuern lassen., der den Timer enthält (wenn dus ganz sauber haben willst). Ansonsten auch in Anbestracht der Tatsache das du dir als FISI nicht unbedingt die Gedanken über sawos machen musst, kannst das ja auch direkt im Dialog machen.

Um dir Code zu posten fehlt mir leider die Zeit. Vielleicht kann dir da ja Spachten weiterhelfen^^

Gruß

Markus

Link zu diesem Kommentar
Auf anderen Seiten teilen

@ MarkusLe: du musst den Thread ja nicht hart abschiessen. Die MessageBox könnte sich ja beim Cancel_Request sauber verabschieden. Natürlich nur wenn MsgBox in der Lage dazu ist. Sonst einfach ein neues Form als Dialog verwenden.

@ Topic:

Ich hab auch nicht wirklich Zeit um viel zu coden. Ein zweites Windows-Form zum Projekt hinzufügen und Timer draufpacken. Im Konstruktor wird die gewünchte Zeit entgegengenommen. Ich hoffe das hilft.


'Klasse Form2.vb

Public Class Form2


    Public Sub New(ByVal zeit As Integer)


        ' Dieser Aufruf ist für den Windows Form-Designer erforderlich.

        InitializeComponent()


        ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.

        Timer1.Interval = zeit

    End Sub


    Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick

        Me.Close()

    End Sub


  Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        Timer1.Start()

    End Sub

End Class


'Klasse Form1.vb

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load


 Dim objForm As New Form2(10000)

        objForm.Show()


End Sub

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...