Timmer Intervall

  • VB.NET

Es gibt 14 Antworten in diesem Thema. Der letzte Beitrag () ist von lordknoblauch.

    Erst mal willkommen im Forum hier, Bighard :)
    Also díe Antworten von den anderen stimmt alles, ABER: damit der Timer auch läuft musst du die Enabled Eigenschaft auf True setzen oder im Code irgendwo Timer1.Start aufrufen, sonst wird's nichts. Um ihn zu stoppen dann eben auch Timer1.Stop()

    Ich schlage vor du besorgst dir zunächst ein Visual Basic Buch oder siehst dir im Internet ein Openbook zum Thema an. Lern die Grundlagen zuerst :thumbup:
    %P%
    Hello World

    %P% schrieb:

    Erst mal willkommen im Forum hier, Bighard :)
    Also díe Antworten von den anderen stimmt alles, ABER: damit der Timer auch läuft musst du die Enabled Eigenschaft auf True setzen oder im Code irgendwo Timer1.Start aufrufen, sonst wird's nichts. Um ihn zu stoppen dann eben auch Timer1.Stop()

    Ich schlage vor du besorgst dir zunächst ein Visual Basic Buch oder siehst dir im Internet ein Openbook zum Thema an. Lern die Grundlagen zuerst :thumbup:
    %P%
    mal ganz doof gefragt: wieso? hat das diesselbe wirkung wie .Start()? in meinem leben noch keinen timer auf true gesetzt, funktioniert hat's trotzdem ^^
    das wurde irgendwann im zuge der erweiterungen und anpassungen der geleichheit von .net angepasst.
    dazu die aussage von msdn

    Aussage von msdn:
    ElementTimer.Enabled = True
    ElementTimer.Strart()
    Hallo Bernd,
    nur als Anmerkung:
    Die Start Methode macht intern nichts weiter, als die Enabled Eigenschaft auf True zu setzen.
    lodrknoblauch du Klugschei*er ich hab gemeint dass er im Vorfeld, also im EIGENSCHAFTSFENSTER die Enabled-Eigenschaft auf True setzen kann, oder siehst du im Eigenschaftsfenster irgendwo ein Start()??? Und das mit dem Start(), bzw. Stop() wird im Code eher geschrieben.
    Oder willst du einfach nur Postings sammeln, Haarspalter

    %P% :thumbup:
    Hello World
    Dann musst du es rumdrehen
    nicht
    Timer1.Interval = CInt(Textbox1.Text) * 1000
    sondern
    TextBox1.Text = Cstr(Timer1.Interval)
    in Sekunden
    TextBox1.Text = Cstr(Timer1.Interval / 1000)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ChaosBernd“ ()

    %P% schrieb:

    lodrknoblauch du Klugschei*er ich hab gemeint dass er im Vorfeld, also im EIGENSCHAFTSFENSTER die Enabled-Eigenschaft auf True setzen kann, oder siehst du im Eigenschaftsfenster irgendwo ein Start()??? Und das mit dem Start(), bzw. Stop() wird im Code eher geschrieben.
    Oder willst du einfach nur Postings sammeln, Haarspalter

    %P% :thumbup:
    wieso denn? war 'ne ernstgemeinte frage und keine kritik. ich erstelle meine timer meistens über code und enabled benutze ich nur für controls, die noch nicht oder nicht mehr verfügbar, aber sichtbar sein sollen. da das ja beim timer ohnehin nicht zutrifft, bin ich nie auf die idee gekommen, einen timer über enabled zu starten, sondern starte ihn, wenn er denn von anfang an laufen soll, in der form_load über .start().

    mich hat's einfach interessiert.


    @bernd soweit ich das verstanden habe, will er den intervall zur laufzeit ändern, indem er die angabe des intervalls in eine textbox in sekunden schreibt und der wert dann auf millisekunden hochgerechnet wird und als intervall übergeben.

    wenn dem so ist, stimmt

    VB.NET-Quellcode

    1. Timer1.Interval = CInt(Textbox1.Text) * 1000

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „lordknoblauch“ ()

    @lordknoblauch
    Ja, aber wenn beispielsweise der Timer im vornherein Laufen soll und das Start() von keinem Ereignis abhängig ist, MUSS die Enabled Eigenschaft gesetzt werden, z.B. wenn ich automatisch in einem Label die Uhrzeit anzeigen möchte, hierbei ist es sinnvoll die Enabled-Eigenschaft auf True zu setzen, man kann aber auch seinen Code mit unnützen Anweisungen vollstopfen und im Form_Load Timer1.Start() aufrufen. Was ich sagen wollte ist, man sollte halt selbst wissen, in welchem Projekt der Timer automatisch(Enabled->True) oder abhängig von einem Event(Timer1.Start()) ausgelöst/gestartet wird.

    %P% :thumbup:
    Hello World

    %P% schrieb:

    hierbei ist es sinnvoll die Enabled-Eigenschaft auf True zu setzen

    Nein.
    Denn dadurch beginnt der Timer schon in InitializeComponent zu laufen und wenn man's ganz blöd anstellt, greift man im tick Event auf ein control zu, das noch gar nicht initialsiert wurde. Das löst dann eine Exception aus, die im Debugger nicht in den Break geht, weil InitializeComponent auf DebuggerStepThrough steht. Die meisten User sind mit sowas dann komplett überfordert.
    ich persönlich mach sowas alles lieber über code, genauso wie die textzuweisungen von buttons und den ganzen kram. wenn's unübersichtlich wird, lager ich die segmente dann einfach in funktionen aus und pack die dann in 'ne #region.

    bin nicht so'n freund von dem eigenschaften-fenster, find's zu umständlich da immer erst auf den designer zu gehen, dann das control rauszusuchen und dann noch in den eigenschaften zu scrollen. im code hab ich das schön übersichtlich hintereinander weg und alles was nicht angegeben ist, hat halt den standardwert.

    den designer benutz ich meistens ohnehin nur für quick&dirty sachen, alles was ordentlich werden soll erstelle ich mir die controls von hand. find ich angenehmer und macht mehr spaß :thumbsup: