1

Konu: Class oluşmuyor ?

Visual Fox Pro
*Set Classlib To  ("\AVFP9\AVFP\LIBS\AGRAF.VCX") Additive

xclass="cizimclass.prg"
Thisform.AddProperty("XO_URUN") && ürün tasarım değişkenleri
Thisform.XO_URUN=Newobject('URUN',xclass)

Yukarıdaki kodda

Visual Fox Pro
Set Classlib To  ("\AVFP9\AVFP\LIBS\AGRAF.VCX") Additive

devreye soktugumda xo_urun objesini oluşturmuyor. Bu satırı iptal ettiğimde xo_urun objesini oluşturuyor. Hiç bir şey anlamadım.  Birbirinden tümüyle ayrı, ortak noktası da olmayan iki class. Bİr öneriniz var mı?
Şimdiden teşekkürler...

2

Re: Class oluşmuyor ?

Merhaba

Sen neden SET CLASSLIB komutunu parantez içine alıyorsun? Sadece bir değişken ise, o parantez gerekli.
Yani:

Visual Fox Pro
Set Classlib To "\AVFP9\AVFP\LIBS\AGRAF.VCX" Additive


veya

Visual Fox Pro
LOCAL cMyLib = "\AVFP9\AVFP\LIBS\AGRAF.VCX"

Set Classlib To  (cMyLib) Additive
Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

3

Re: Class oluşmuyor ?

Pardon, düzeltiyorum:
ya

Visual Fox Pro
Set Classlib To \AVFP9\AVFP\LIBS\AGRAF.VCX Additive

yani tırnaksız

veya

Visual Fox Pro
LOCAL cMyLib = "\AVFP9\AVFP\LIBS\AGRAF.VCX"

Set Classlib To  (cMyLib) Additive
Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

4 Son düzenleyen, Mehmet K (26.08.2012 06:37:54)

Re: Class oluşmuyor ?

Çok özür dilerim: saçmalamışım. Senin yazdığın tabiki doğru,
Belli bir saatten sonra insan beyanda bulunacağına yatağa yatıp uyumasında fayda var.

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

5

Re: Class oluşmuyor ?

Ben de nedenini daha bulamadım. Bu nedenle set classlib to satırını çıkartıp

Visual Fox Pro
THISFORM.TB= Newobject("turbo3d","\AVFP9\AVFP\LIBS\AGRAF.VCX")

satırı ile derdimi çözdüm ama neden böyle olduğunu anlamışta değilim.

6

Re: Class oluşmuyor ?

Aydın,
Nedenini bilmiyorum ama ben NewObject() ciktigindan beri Set classlib kullanmayi biraktim.

Class'in init kodunda .f. donmesini saglayacak birsey var mi baktin mi? Oraya set step koyup baksan.

7

Re: Class oluşmuyor ?

Visual Fox Pro
Set Classlib To  ("\AVFP9\AVFP\LIBS\AGRAF.VCX") Additive

xclass="cizimclass.prg"
Thisform.AddProperty("XO_URUN") && ürün tasarım değişkenleri
Thisform.XO_URUN=Newobject('URUN',xclass)

sorunu buldum. agraf.vcx icinde bir "urun" classı varmış. Gözümden kaçmış.
anladığım kadarı ile şöyle oluyor

Visual Fox Pro
Set Classlib To  ("\AVFP9\AVFP\LIBS\AGRAF.VCX") Additive


komutu ile bir "urun" class referansı oluşuyor.  "cizimclass.prg" icinde ki diğer "urun" classı vfp tarafından kabul edilmiyor  , agraf.vcx içindeki class kabul ediliyor. Anlaşılıyor ki, set classlib to komutunu dikkatli kullanmak yada hiç kullanmamak onun yerine newobject kullanmak daha iyi.

8 Son düzenleyen, cetinbasoz (28.08.2012 12:47:12)

Re: Class oluşmuyor ?

Bu soyledigin problemi, Set classlib to ... komutu icin biliyordum ama NewObject() ile olmayacagini dusunmustum, yanilmisim. Set classlib to kullaninca ayni isimli classtan birden fazla lib'de varsa hangisinin kullanilacagini garantilemenin yolu yok.