2016-05-16 7 views
1

Ich habe ein Problem Ich habe eine neue Form, mit Hintergrund-IMG, und alles, was ich brauche und es funktioniert, wie ich wollte, aber ich muss auch automatisch nach 5 oder 10 Sekunden schließen.C# FORM mit Bild und automatisch schließen

Ich suchte den ganzen Tag auf Google ... aber kein Tutorial war gut. Ich benutze Visual Studio 2013.

Können Sie Jungs mir bitte helfen ... Ich bin verzweifelt jetzt ... es ist fast 10 Stunden, seit ich versuche. Du bist meine letzte Hoffnung. Danke

this.close() hat es nicht gemacht, oder ich habe es falsch gemacht, aber ich bezweifle das. Application.Exit scheitern Timer Fehler geben ...

//form 
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace Cerum_HS 
{ 
    public partial class CERUM_HS : Form 
    { 
     public CERUM_HS() 
     { 
      InitializeComponent(); 
      Rectangle r = Screen.PrimaryScreen.WorkingArea; 
      this.StartPosition = FormStartPosition.Manual; 
      this.Location = new Point(Screen.PrimaryScreen.WorkingArea.Width - this.Width, Screen.PrimaryScreen.WorkingArea.Height - this.Height); 
     } 
    } 
} 


//main. 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Threading.Tasks; 
using System.Windows.Forms; 
using System.Timers; 
//using System.Windows.Forms; 

namespace Cerum_HS 
{ 
    static class Program 
    { 
     /// <summary> 
     /// The main entry point for the application. 
     /// </summary> 


     private static System.Timers.Timer aTimer; 

     [STAThread] 
     static void Main() 
     { 
      Application.EnableVisualStyles(); 
      Application.SetCompatibleTextRenderingDefault(false); 
      Application.Run(new CERUM_HS()); 

      aTimer = new System.Timers.Timer(); 
      aTimer.Interval = 10; 

      aTimer = new System.Timers.Timer(10); 

      aTimer.Elapsed += OnTimedEvent; 

      aTimer.AutoReset = false; 

      aTimer.Enabled = true; 
     } 

     private static void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e) 
     { 
      //Console.WriteLine("The Elapsed event was raised at {0}", e.SignalTime); 
      Application.Exit(); 
      //this.close(); 
     } 
    } 
} 
+0

Was ist passiert? Wo hast du es genannt? Welche Fehler haben Sie bekommen? – SLaks

+0

Ich habe die Funktion von beiden Dateien aufgerufen. Manchmal gibt es einen Fehler, aber die App dosent schließen. Ich werde den Code jetzt posten. –

+0

wo ist dein Aufruf von 'this.Close()'? Benutzt du keinen Timer? wahrscheinlich in einem separaten Thread laufen? –

Antwort

1

Da mein Kommentar zu helfen schien, ich dachte, dass ich es schreiben als Antwort unten.

Bogdan bitte Kommentar, wenn diese Implementierung ist, wie es am Ende für Sie gearbeitet hat.

+0

gut this.Close(); gibt Fehler ersetzen mit Application.Exit(); –

+0

Okay, geändert! nette Teamarbeit. –

1

würde ich eine PictureBox und Timer auf dem Formular gesetzt (auf 5000 ms), klicken Sie auf das Ereignis Tick, und diesen Code verwenden:

namespace Image 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      // set picture box to image of interest 
      // size and position form appropriately 
     } 

     private void timer1_Tick(object sender, EventArgs e) 
     { 
      timer1.Enabled = false; 
      this.Close(); 
     } 
    } 
} 
Verwandte Themen