Tolong pilih kategori sesuai, jenis posting (pertanyaan atau bukan) dan sertakan tag/topik yang sesuai misal komputer, php, mysql, dll.
Promosi atau posting tidak pada tempatnya akan kami hapus.
Klik link berikut untuk informasi cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com

Baca cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

Timer tidak mau berhenti looping walau sudah di false/stop

say, gw lagi bikin pesan msgbox pke timer muncul setelah 2 detik jalankan, tapi aneh nya



    Private Sub tmr_pesanStartUp_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmr_pesanStartUp.Tick
 
pesanStartUp()
 
tmr_pesanStartUp.Enabled = False
End Sub


uda gw false in timernya, pesanStartUp gw itu slalu di loop, terus
menerus setelah 2 detik muncul trus mpe gw close semua msgboxnya,
gw juga uda coba bkin tmr_pesanStartUp.Enabled = False di private sub pesanStartUp()
gw juga uda coba pakai attribute stop
tetap saja timernya tetap berjalan, ini
kurang apa ya say?




SOLUSI :
Hanya perlu membalikkan fungsi timer.enabled = false sebelum pesanStartUp()
    Private Sub tmr_pesanStartUp_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmr_pesanStartUp.Tick
tmr_pesanStartUp.Enabled = False
pesanStartUp()
 
End Sub


Ayo, ada yang bisa jelasin kenapa fungsi ini bisa berhasil? padahal tmr_pesanStartUp.Enabled =False di eksekusi dluan loh :D
Tagged:

Comments

  • script lengkapnya untuk looping sprti apa ya?
  • yg namanya timer ya pasti jalan terus to mas ...
    kalo di stop bisa ngaruh ke timer nya OS nya sendiri ...

    ini maunya bikin apa ?

    kalo semodel chatbox, di cek aja caption window nya,
    kalo window dgn caption tertentu ada -> update content nya saja
    kalo window dgn caption tersebut tdk ada -> buka window dgn caption tsb + isi content nya
  • edited July 2012
    Ane mau bikin pesan penggunaan program ane di pas start up gan, cuman kalo databasenya tidak konek, kalo tidak menggunakan timer, pesan tidak akan di tampilkan


        Private Sub pesanStartUp()
     
    MessageBox.Show("1. Connect ke Microsoft Access: [database.mdb] yang di letakkan di C:\" & vbNewLine & vbNewLine & "2. Dapat dikoneksi di komputer manapun, syaratnya hanya perlu meletakkan file [kampus.mdb] di C:\" & vbNewLine & vbNewLine & "3. Baris genap berwarna abu-abu" & vbNewLine & vbNewLine & "4. Bisa di-filter seperti pada microsoft Excel(Gunakan component [tw_datagridview.dll])" & vbNewLine & vbNewLine & "5. Judul form berjalan",
    Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
     
     
    End Sub
     
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
    Me.MahasiswaTableAdapter.Fill(Me.DataSet1.mahasiswa)
     
    End Sub
     
     
    Private Sub tmr_pesanStartUp_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmr_pesanStartUp.Tick
     
    pesanStartUp()
     
    tmr_pesanStartUp.Enabled = False
    End Sub


    *tmr_pesanStartUp = Timer, intervalnya ane setting 2000 (berarti 2 detik)

    nah ketika di run, program ini menjalankan pesanStartUp setelah 2 detik toh, karena kalo tidak di gituin, pas databasenya tidak diletakin di C:\ bakal nimbul error n kaga mau meng eksekusi perintah selanjut nya, jadi ane makai timer ini, tetapi setelah makai timer ini, gmn cara berhentiin timernya bekerja setelah 1x eksekusi perintah pesanStartUp gw ya?

    gw uda coba pke tmr_pesanStartUp.Enabled = False atau tmr_pesanStartUp.Stop() di tmr_pesanStartUp_Tick

    seharusnya timer udah berhenti bekerja kan? tetapi kenapa tidak ya?
    mohon bantuannya say..
  • biasanya ane pake delphi dgn perintah trsbut seharusnya sih kalau sudah di Enabled=False, maka timer akan off,

    apakah di VB komponen timernya ada propertis Active ?

    ntar ya ane cari2 dulu ref
  • pake ini ya ?
    http://msdn.microsoft.com/en-us/library/365dky5y.aspx#Y0

    itu kan bisa di definisikan caption nya ...
    tinggal mainan IF di pesanStartUp() nya

    IF (window dgn title XXX TIDAK ADA) THEN MessageBox.Show(...)

    coba google cara memeriksa window dgn title tertentu ada atau tidak ...
  • edited July 2012
    biasanya ane pake delphi dgn perintah trsbut seharusnya sih kalau sudah di Enabled=False, maka timer akan off,

    apakah di VB komponen timernya ada propertis Active ?

    ntar ya ane cari2 dulu ref
    nah itu dia bro, ane bingung. Tidak ada gan, cuman ada properties, Enabled = True ato False
    pake ini ya ?
    http://msdn.microsoft.com/en-us/library/365dky5y.aspx#Y0

    itu kan bisa di definisikan caption nya ...
    tinggal mainan IF di pesanStartUp() nya

    IF (window dgn title XXX TIDAK ADA) THEN MessageBox.Show(...)

    coba google cara memeriksa window dgn title tertentu ada atau tidak ...
    yep makai itu, bukan soal caption say, ini gw uploadin source code kumplit gw
    Source code : https://dl.dropbox.com/u/83037784/coding ku.rar

    file tw_datagridview.dll harus 1 folder ma file .exe nya ya say, trus databasenya harus di taruh di C:\

    nah kalo uda coba lu hilangin/rename databasenya biar kaga kebaca, pasti program ane itu error kan, nah kalo error musti tetap nampilih pesanStartUp nya, dan itu looping mulu
  • ndak paham alur koding nya sendiri ya ? :D
    ya udah ... silakan dilanjut ...

    gw ngeloyor pergi ajah ... kebanyakan baca "gan"
  • edited July 2012
    ndak paham alur koding nya sendiri ya ? :D
    ya udah ... silakan dilanjut ...

    gw ngeloyor pergi ajah ... kebanyakan baca "gan"
    hahaha. gw ga tau apa yg salah ma "gan" tapi udah ku edit masbro :D

    bukan, gw msh belum faham benar, ma vb, ini gw lagi belajar sendiri . Boleh di bantuin masbro?
    sepertinya alur yg gw ga faham ini masih di timer, n apa yang di kasi tahu ma masbro sebelumnya. Gw coba googling dlu apa yang di maksud ma masbro itu. Thx ya..
  • edited July 2012
    gini lho ... alur proses nya, di koding situ saat ini :

    - timer, tiap 2 detik, run fungsi tmr_pesanStartUp_Tick()
    - fungsi tmr_pesanStartUp_Tick() tiap kali dipanggil, akan memanggil pesanStartUp()
    - fungsi pesanStartUp() akan memunculkan window pesan
    - kejadiannya, window nya muncul banyak sekali, berulang-ulang, tiap 2 detik

    pengen situ kan, window cukup nungul sekali
    - tapi - mestinya pengecekan error tetep berjalan,
    selama belum dikoreksi, harusnya, kalo window ditutup, 2 detik berikut muncul window box peringatan lagi
    bener to ?

    makanya saya bilang, tu window box dikasih caption / title
    biar bisa di cek, window dgn nama XXX sudah ada atau belum
    kalo sudah ada, gak perlu popup window baru, ya cuma 1 yg sudah ada itu tadi
    kalo gak ketemu window dgn title XXX baru dimunculkan window popup nya

    artinya, tiap kali yg muncul cuma 1 window
    kalo di close, selama error belum dibenerin, 2 detik bakal nungul lagi, tapi ya cuma 1 window

    sampai sini paham gak ?
  • edited July 2012
    @. : faham bro, tapi apa kepanjangan sepertinya.
    gw juga uda search cara membaca title itu, tapi info yang menarik, gw ga kepikiran harus membaca title juga bisa. Tapi sepertinya ga perlu se ruwet itu, ternyata kita cuman perlu balikin tu tmr_pesanStartUp.endabled = false / tmr_pesanStartup.Stop() sebelum pesanStartUp() di kerjakan :D

    jadinya seperti ini
        Private Sub tmr_pesanStartUp_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmr_pesanStartUp.Tick
     
    tmr_pesanStartUp.Enabled = False
    pesanStartUp()
     
     
    End Sub


    Bisa juga kan mas titik? :D
    ayo ada yang bisa jelasin kenapa fungsi timer bisa berhenti klo kodingnya seperti itu? :D (gw si uda tau rahasianya ;)) )
  • kalo posisinya kaya gitu ...

    bukannya kalo error belum dibenerin, dan window warning di close,
    2 detik berikut warning gak nungul lagi ?

    artinya user gak tau error sdh bener atau belum ... (anggap lah user awam)
  • Masalahnya adalah, penampilan messagebox itu bersifat blocking. Artiny, ketika messagebox ditampilkan dan tidak ditutup, otomatis perintah dibawahny tidak akan dijalankan. Dlm kasus ini, perintah yang tidak (atau belum) dijalankan adalah .Enabled=False. Coba saja, ketika muncul, langsung ditutup, maksimal harusny messageboxny hanya tampil 2x....

    semoga membantu..

    Regards,

    Handra
    -- Try the best, do the best, be the best --
    -- http://www.handracs.info --
Sign In or Register to comment.