Paint_Event aufrufen



  • Hallo ,

    ich möchte im tick Event eines Timer das Paint Event aufrufen.

    private void timer1_Tick(object sender, EventArgs e)
            {
    
                            timer1.Start(); 
                timer1.Interval=1000;
    
                Form1_Paint(sender,new PaintEventArgs(       ,new Rectangle());
    
            }
    

    der Konstruktor des PaintEventArgs verlangt ein Graphics Objekt. ich weiß nicht wie ich das erzeugen soll da man von ihm keine Instanz anlegen kann .



  • this.Invalidate(); + this.Update();



  • Form1_Paint(this.invalidate,this.update ) ??

    Was meinst du genau ?



  • was ich mich auch grad frage wieso hat der compiler so ein Problem mit double und float. In C++ kam da höchstens mal nee Warnung.



  • blurry333 schrieb:

    Form1_Paint(this.invalidate,this.update ) ??

    Was meinst du genau ?

    Damit wird er wohl eher Control.Invalidate() und Control.Update() gemeint haben.

    blurry333 schrieb:

    was ich mich auch grad frage wieso hat der compiler so ein Problem mit double und float.

    Das wird wohl was mit widening bzw. narrowing zu tun haben, ansonsten würde mir kein "Problem mit double und float" einfallen...
    Es gab dazu mal n Thread im Java Unterforum, der das Thema hatte.

    blurry333 schrieb:

    In C++ kam da höchstens mal nee Warnung.

    C# ist nicht C++
    Möglicher Datenverlust ergibt in C# nunmal einen Fehler.



  • Genau, Control.Invalidate() und Control.Update() waren gemeint, statt Form1_Paint direkt aufzurufen, quasi dadurch das Paint-Ereignis durch die Form selbst erzeugen lassen.


Anmelden zum Antworten