1

Konu: obje nin referas yolu

Arkadaşlar form üzerindeki bir objenin örnegin grid in referans aadresini "THİSFORM.GRİD1." bunu nasıl kopyala yapıştır yapabiliriz pratik bir yöntemi varmıdır acaba ?

Bilgi Paylaşıldıkça Artar...!

2

Re: obje nin referas yolu

Antepli, söylediğinden hiç bir şey anlamadım desem smile

Grid 'in referans adresi derken; heap teki adresinimi kasdediyorsun? "Thisform.Grid1" i kopyala yapıştır diyorken; text olarak mı ( öyleyse bu text nerde ) yoksa "Grid1" i nesne olarak kopyalayıp başka bir yere yapıştırmak mı?

Sorunu biraz açarsan daha rahat anlayabiliriz?

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: obje nin referas yolu

Ornegi buton kodu icinde iken Sag Mouse - Object List acilan pencereden yazmak istedigin kontrole tıkla VFP senin yerine
thisform.pageframe1.page1.text1 ... yazar ..

birde SYS(1272, oObjectName) var sadece runtime da calisir objenin o andaki object hiyerarsisini yakalar.

4

Re: obje nin referas yolu

galiba demek istediği (ben de merak ediyorum)
herhangi bir obje seçili iken, onun tam adresini _cliptext'e atacak birşey.

VFP9 SP2

5

Re: obje nin referas yolu

x=thisform.grid1

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

6

Re: obje nin referas yolu

ugurlu2001 yazdı:

Antepli, söylediğinden hiç bir şey anlamadım desem smile

Grid 'in referans adresi derken; heap teki adresinimi kasdediyorsun? "Thisform.Grid1" i kopyala yapıştır diyorken; text olarak mı ( öyleyse bu text nerde ) yoksa "Grid1" i nesne olarak kopyalayıp başka bir yere yapıştırmak mı?

Sorunu biraz açarsan daha rahat anlayabiliriz?



sevgili ugur bey ;

Bir form içerisinde örnegin bir textbox in  vaild 'dine kod yazıyoruz bu kodu yazarken örnegin thisform.text1.value="ali" gibi kod yazıyoruz ben bu yazdıgımız degeri obje  üzerine gelince alta tam adresini fox gösteriyor  bunu objenin üzerinde iken nasıl alabilirim çünkü kod yazarken tekrar adresini takip etmek çok zor oluyor özellikle page kullanır ken iç içe kullandıgımız pagefreme ler içindeki adresleri yazarken zaman alıyor hani bunun daha pratik bir yolu varmı demek istedim

Bilgi Paylaşıldıkça Artar...!

7 Son düzenleyen, antepli (13.11.2010 21:40:39)

Re: obje nin referas yolu

konuka yazdı:

galiba demek istediği (ben de merak ediyorum)
herhangi bir obje seçili iken, onun tam adresini _cliptext'e atacak birşey.



evet bunu demek istedim ama anlatamadım heralde sagolasın

Bilgi Paylaşıldıkça Artar...!

8

Re: obje nin referas yolu

x="_screen."+thisform.name+"."+this.name

ama arada container filan varsa işe yaramaz bu. ve de böyle birşeyi istemeni anlayamıyorum. x=this yazarak objenin referansını zaten saklayabilirsin. ve de onu sonra istediğin gibi kullanırsın. neyse...

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

9

Re: obje nin referas yolu

sys(1272, sys(1270))

mi acaba sordugun. Bunu debugger watch window'a koy, sonra formunda dolas (debuggeri gorecek sekilde ayarla).

10

Re: obje nin referas yolu

biraz geç oldu ama (bayram öncesi ve bayram dolayısıyla ) bilgisayar başına yeni geçtim herkese zaman ayırıp cevap verdikleriçin tşekkür ederim soykanın mesajını geç farkettim aradıgım cevap ordada imiş tekrara teşekkür ederim smile)))

Bilgi Paylaşıldıkça Artar...!

11

Re: obje nin referas yolu

Konfiçyus'un Çetin'e dediği gibi: Senin bilginin sınırı karşındakinin anlayabildiği kadardır !

Deneme yanılma ile aşağıdakini Load'a koyup, imleç obje üstünde iken kullanınca işe biraz yaradı:
ON KEY LABEL F8 _cliptext=sys(1272, sys(1270))

Obje referanslarını design time da bulamıyoruz galiba (VFP 6da vardı diye hatırlıyorum), orada da sağ tıklayıp ObjectList'ten seçilebiliniyor.

VFP9 SP2

12

Re: obje nin referas yolu

Ilahi Ali:)
Evet sys(1272) design time'da yok. Sag tiklama ile object list var. Bir de eger gerekirse kod yazabilmek icin ASelObj() var - benim favorim. ASelObj() genelde builderlar tarafindan kullaniliyor. Basit bir ASelObj ornegi:

Bir adet Label koyup bazi ozelliklerini ayarladik, aynisindan birkac tane daha koymak istiyorum diyelim (mesela haftanin gunlerini alt alta label olarak koymak istedigini farzet):
-Pazartesi yazilacak label'i forma koy ve istedigin bazi ozelliklerini ayarla ve o label'a tikla (hatta click kodunu da sonradan yazalim)
-Command window'a git
-Modi comm ile yeni kod penceresi ac ve bunu yaz, sec, sag klik ve execute:)

Visual Fox Pro
ASELOBJ(aObj)

 
loObj=aObj[1]
gunler = "Pazartesi,Sali,Carsamba,Persembe,Cuma,Cumartesi,Pazar"
ALINES(laGunler,m.gunler,1,',')
 
TEXT TO ClickCode noshow
 
MESSAGEBOX(this.Name+':'+this.Caption)
 
ENDTEXT
 
FOR ix=1 TO 7
    lcName = "Gun"+LTRIM(STR(m.ix))
    loObj.CloneObject(m.lcName)
 
    loNewObj = GETPEM(loObj.Parent, m.lcName)
    loNewObj.Top = m.ix * (loObj.Height + 2) + loObj.Top
    loNewObj.Caption = laGunler[m.ix]
    loNewObj.AutoSize = .t.
    loNewObj.Visible = .t.
 
    loNewObj.WriteMethod('Click',m.ClickCode)
endfor

Bu sekilde var olan bir kontrolun class'ini da degistirmek mumkun (normalde readonly).