1

Konu: grid'den veri almak

merhabalar,

database'deki bir table'dan query ile çektiğim verileri gösteren bir grid'im var (RecordSourceType=SQL statement). (AllowCellSelection=.F.) Gridde 8 kolon var. Grid'de bir satır tıklandığında tıklandığı satırın ilk (veya herhangi bir) sütunun değerini almak istiyorum. Aşağıdaki kod satırı sadece seçilen satırdaki ilk sütun tıklandığında çalışıyor. Örneğin 8. satırın 3. sütununu tıkladığımda 8. satırın 1. sütununun değerini vermiyor (ki ben bunu istiyorum) en son gösterdiği değeri veriyor. Ancak 8. satır 1. sütunu tıklarsam istediğim veriyi alabiliyorum. Yardımcı olabilirseniz sevinirim.

Visual Fox Pro
thisform.grid1.column1.text1.value

2

Re: grid'den veri almak

Sen isi yanlis yerden yapmaya calisiyorsun. grid.column1... ise hic karistirma. Grid sonucta bir datasource'a bagli ve tikladiginda o datasource uzerinde record pointer hareket ediyor (gridkerin yani sira, combobox ve listboxta da oyle). Ornek:

Visual Fox Pro
Public oFOrm

oFOrm = Createobject('myForm')
oFOrm.Show
 
Define Class myForm As Form
    DataSession = 2
    Width = 400
    Height= 300
 
    Add Object myGrid As Grid With Width = 400, Height= 300,Anchor=15,;
        AllowCellSelection = .F., ;
        RecordSourceType = 4, ;
        RecordSource =     "Select * FROM ('" +_Samples + "Data\customer')"+ ;
        " INTO Cursor test"
 
    Procedure myGrid.Click
        Thisform.Caption = "Clicked on row:" +  test.Cust_id
    Endproc
Enddefine

3

Re: grid'den veri almak

Haklısınız kolayca halloldu.  Bu tür durumlarda datasource'u kullanmak en doğrusu sanırım.

Teşekkürler.