18.02.2013 Views

NCURSES ile Yazılım Geli¸stirme NASIL

NCURSES ile Yazılım Geli¸stirme NASIL

NCURSES ile Yazılım Geli¸stirme NASIL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>NCURSES</strong> <strong>ile</strong> Yazılım Geli¸stirme <strong>NASIL</strong><br />

int i¸slev<br />

field_status (FIELD *alan); /* sorgulanacak alan */<br />

/* alanın durumu <strong>ile</strong> döner */<br />

Alanın durumunu alandan ayrılırken kontrol etmek, veri do˘grulama halen devam etti˘ginden ve veri önbelle˘gi<br />

henüz de˘gi¸smemi¸s olab<strong>ile</strong>ce˘ginden daha sa˘glıklıdır. Dönen do˘gru de˘geri almak için, alanın ayrılma <strong>ile</strong> ilgili<br />

kısmına veya alan veya formun ilklendirme veya sonlandırılma kısımlarında veya hemen form sürücüsü<br />

tarafından REQ_VALIDATION iste˘gi i¸slendikten sonra field_status() ça˘grılmalıdır.<br />

18.3.7. Alan Kullanıcı Göstericisi<br />

Her alan yapısı kullanıcı tarafından de˘gi¸sik amaçlar için kullanılab<strong>ile</strong>n bir gösterici içerir. Form kütüphanesi<br />

tarafından kullanılmaz ama kullanıcı tarafından herhangi bir amaç için kullanılabilir. Sıradaki i¸slevler kullanıcı<br />

gösteric<strong>ile</strong>rini ayarlar ve onları e¸sler.<br />

int i¸slev<br />

set_field_userptr (FIELD *alan, /* de˘gi¸stir<strong>ile</strong>cek alan */<br />

char *kull_gost); /* ili¸siklendir<strong>ile</strong>cek kullanıcı<br />

göstericisi */<br />

int i¸slev<br />

field_userptr (FIELD *alan); /* sorgulanacak alan */<br />

/* kullanıcı göstericisini döndürür */<br />

18.3.8. De ˘gi¸sken Boydaki Alanlar<br />

E˘ger çalı¸sma zamanında de˘gi¸sken geni¸slikte bir alan istiyorsanız bu, tüm özellikleri <strong>ile</strong> kullanmanız gereken<br />

bir özelliktir. Bu, kullanıcının, asıl alan boyundan daha büyük de˘gerler girmesini ve alanın büyümesini sa˘glar.<br />

Alan, yerle¸stirilme konumuna göre yeni gir<strong>ile</strong>n ver<strong>ile</strong>r <strong>ile</strong> bütünle¸sik olabilmek için yatay veya dikey kaydırılabilir<br />

olacaktır.<br />

Bir alanın dinamik olarak büyümesini sa˘glamak için O_STATIC seçene˘gi etkisiz olmalıdır. Bu da,<br />

field_opts_off(field_pointer, O_STATIC);<br />

<strong>ile</strong> yapılabilir. Fakat bir alanın sonsuz boyda uzamasına izin vermek pek de tavsiye edilmez. Alanın<br />

geni¸sleyeb<strong>ile</strong>ce˘gi en fazla büyüklü˘gü tanımlayabilirsiniz.<br />

int i¸slev<br />

set_max_field (FIELD *alan, /* de˘gi¸stir<strong>ile</strong>cek alan */<br />

char azm_buy); /* alan için olası azami büyüme miktarı */<br />

Dinamik olarak büyüyeb<strong>ile</strong>n bir alandan bilg<strong>ile</strong>r ¸su ¸sekilde alınabilir:<br />

int i¸slev<br />

dynamic_field_info (FIELD *alan, /* de˘gi¸stir<strong>ile</strong>cek alan */<br />

int *sat_say, /* sı˘gdırılacak satır sayısı */<br />

int *sut_say, /* sı˘gdırılacak sütun sayısı */<br />

int *azm_buy); /* sı˘gdırılacak azami büyüme miktarı */<br />

field_inf bildik ¸sekilde çalı¸smasına ra˘gmen, çalı¸sma zamanında geni¸sleyen alanların özellikleri <strong>ile</strong> ilgili<br />

bilg<strong>ile</strong>ri bu i¸slevi kullanarak almanız tavsiye edilir.<br />

http://belgeler.org Linux Kitaplı˘gı 76 / 90

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!