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 />
Alandaki odaklanmadan her ayrılmada do˘grulama yapılacak mı yoksa sadece alan de˘gi¸sti˘ginde mi bir<br />
do˘grulama yapılacak diye kontrol eder. Normalinde sonuncusu do˘grudur. O_PASSOK’u ayarlamak form<br />
i¸slemeniz sırasında e˘ger alanın do˘grulama i¸slevi de˘gi¸siyorsa faydalı olabilir.<br />
O_STATIC<br />
Alanın ilk boyutunda sabit olup olmadı˘gını kontrol eder. Bu seçene˘gi etkisizle¸stirdi˘ginizde, alan çalı¸sma<br />
zamanında de˘gi¸sken bir hal alır ve yazılan girdiye göre geni¸sleyebilir bir özellik kazanır.<br />
Bir alanın özelli˘gi o alan seçildi˘gi anda de˘gi¸stir<strong>ile</strong>mez. Yine de, henüz seçilmemi¸s fakat ekranda gözüken alanların<br />
seçenekleri de˘gi¸stir<strong>ile</strong>bilir.<br />
Seçenek de˘gerleri bit maskeleridir ve açık ¸sekilde, mantıksal VEYA kullanarak olu¸sturulabilir. O_AUTOSKIP<br />
de˘gerinin etkisizle¸stirilmesini daha önce görmü¸stünüz. A¸sa˘gıdaki örnek birkaç seçene˘gin daha kullanımını<br />
açıklamaktadır. Di˘ger seçenekler gerekli görüldü˘gü yerde açıklanmı¸stır.<br />
Örnek 27. Alan Özelliklerini Kullanım Örne ˘gi<br />
#include <br />
#define STARTX 15<br />
#define STARTY 4<br />
#define WIDTH 25<br />
#define N_FIELDS 3<br />
int main()<br />
{ FIELD *field[N_FIELDS];<br />
FORM *my_form;<br />
int ch, i;<br />
/* Curses kipini ilklendir */<br />
initscr();<br />
cbreak();<br />
noecho();<br />
keypad(stdscr, TRUE);<br />
/* Alanları ilklendir */<br />
for(i = 0; i < N_FIELDS – 1; ++i)<br />
field[i] = new_field(1, WIDTH, STARTY + i * 2, STARTX, 0, 0);<br />
field[N_FIELDS – 1] = NULL;<br />
/* Alan özelliklerini ayarla */<br />
set_field_back(field[1], A_UNDERLINE); /* Seçenek için bir satır yaz */<br />
field_opts_off(field[0], O_ACTIVE); /* Bu alan dura˘gan bir etiket */<br />
field_opts_off(field[1], O_PUBLIC); /* Bu alan bir parola alanı gibi*/<br />
field_opts_off(field[1], O_AUTOSKIP); /* Son karakter girildikten sonra */<br />
/* aynı alana giri¸si önlemek için */<br />
/* Alanı olu¸stur ve ekrana yaz */<br />
my_form = new_form(field);<br />
post_form(my_form);<br />
refresh();<br />
set_field_just(field[0], JUSTIFY_CENTER); /* Ortalama ayarı */<br />
set_field_buffer(field[0], 0, "Bu dura˘gan bir alandır");<br />
http://belgeler.org Linux Kitaplı˘gı 74 / 90