1

Konu: Timer sorunu

Aşağıdaki kodda nasıl bir sorun olabilir. ?

SELE 21
dosyasında sürekli anlık hareketler oluyor. Kayıt sayısı sürekli değişiyor.

? Adet1 (Kontrol için kondu ve "PROCEDURE Timer1.Timer" içindeki döngünün çalıştığını gösteriyor.

Ama "txtAdet1" nin güncellenmış hali ekrana gelmiyor.

Sorun nerede olabilir ?

Teşekkürler.

*************************
  ADD OBJECT Timer1 AS TIMER WITH ;
    Interval=1000, ;
    Enabled=.F.

  PROCEDURE Timer1.Timer

            SELE 21
            COUNT TO Adet1 FOR konum2 = 1
            Thisform.txtAdet1.Value = Adet1

           ? Adet1

        .grdListe.Refresh()
        .grdListe.SetFocus()
  ENDPROC

  Add Object txtAdet1 As myTextBox With ;
      Top = 580, ;
      left = 230, ;
      Width = 50, ;
      InputMask = "99,999", ;
      Enabled = .F.

2

Re: Timer sorunu

Onders;

Kodunu detaylı incelemedim ama SELECT 21 = "Sarı Çizmeli Mehmet Ağa" smile

Select ("SecilecekDosya")

Olarak kullansan?!

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

3

Re: Timer sorunu

O dosyada sürekli kayıtlar gelip siliyor. Adı ve içeriği önemli değil.
dediğim gibi

           ? Adet1

kontrolü programın o kısmının sürekli çalıştığını gösteriyor.

ama ekranda kayıt sayısını veren

txtAdet1

güncellenmiyor.

4

Re: Timer sorunu

Visual Fox Pro
ADD OBJECT Timer1 AS TIMER WITH ; 

    Interval=1000, ;
    Enabled=.F.
 
  PROCEDURE Timer1.Timer
  LOCAL lnKayitSayisi
            SELE "DosyaAdi"
            COUNT TO lnKayitSayisi FOR DosyaAdi.Konum2 = 1 && DosyaAdi.Konum2 bu şekilde kullan
            Thisform.txtAdet1.Value = m.lnKayitSayisi
           ? lnKayitSayisi
          Thisform.txtAdet1.Refresh() && Zamansızlıktan böyle yazdım ama bu yöntem efektif ve tavsiye edilen bir yöntem değil
        .grdListe.Refresh()
        .grdListe.SetFocus()
  ENDPROC
 
  Add Object txtAdet1 As myTextBox With ;
      Top = 580, ;
      left = 230, ;
      Width = 50, ;
      InputMask = "99,999", ;
      Enabled = .F.
Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

5

Re: Timer sorunu

Sen timerin calistigindan emin misin? Enabled=.F. gorunuyor.

Visual Fox Pro
Select 21

count to Adet1 for konum2 = 1

yerine:

Visual Fox Pro
select count(*) from TabloAdi where konum2 = 1 into array laAdet

daha iyi degil mi?

6

Re: Timer sorunu

Malesef "txtAdet1" değeri değişmiyor.

Thisform.txtAdet1.Refresh(

i daha önce denemiştim. ama değişmiyor...

7

Re: Timer sorunu

Visual Fox Pro
Thisform.txtAdet1.Value = Adet1


Değer attıkdan sonra bir DOEVENTS komutu koy, veya INKEY(0.1)

PS: Vfp kod için hazır format var. Okunması daha rahat oluyor

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.