Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>NCURSES</strong> <strong>ile</strong> Yazılım Geli¸stirme <strong>NASIL</strong><br />
mekanizmaya sahiptir. Basit bir program <strong>ile</strong> i¸slerin ayrıntılarına inelim.<br />
Örnek 9. Basit Bir Renk Örne ˘gi<br />
#include <br />
void print_in_middle(WINDOW *win, int starty, int startx,<br />
int width, char *string);<br />
int main(int argc, char *argv[])<br />
{ initscr(); /* curses kipi ilklendirmesi */<br />
if(has_colors() == FALSE)<br />
{ endwin();<br />
printf("Uçbiriminiz renkleri desteklemiyor\n");<br />
exit(1);<br />
}<br />
start_color(); /* Renk ba¸slat */<br />
init_pair(1, COLOR_RED, COLOR_BLACK);<br />
attron(COLOR_PAIR(1));<br />
print_in_middle(stdscr, LINES / 2, 0, 0, "Keman !!! Renkli ...");<br />
attroff(COLOR_PAIR(1));<br />
getch();<br />
endwin();<br />
}<br />
void print_in_middle(WINDOW *win, int starty, int startx,<br />
int width, char *string)<br />
{ int length, x, y;<br />
float temp;<br />
}<br />
if(win == NULL)<br />
win = stdscr;<br />
getyx(win, y, x);<br />
if(startx != 0)<br />
x = startx;<br />
if(starty != 0)<br />
y = starty;<br />
if(width == 0)<br />
width = 80;<br />
length = strlen(string);<br />
temp = (width – length)/ 2;<br />
x = startx + (int)temp;<br />
mvwprintw(win, y, x, "%s", string);<br />
refresh();<br />
Görüdü˘günüz üzere renkleri kullanabilmeniz için öncelikle start_color() i¸slevini ça˘gırmalısınız. Bundan<br />
sonra de˘gi¸sik i¸slevler kullanarak uçbiriminizin renk yeteneklerini kullanabilirsiniz. Bir uçbirimin renk özniteliklerinin<br />
olup olmadı˘gını anlamak için has_colors() i¸slevini kullanabilirsiniz. E˘ger FALSE dönerse, uçbirimin<br />
renk deste˘gi yoktur.<br />
start_color() i¸slevi ça˘grıldı˘gı anda Curses uçbirim tarafından desteklenen tüm renkleri ilklendirir. Bu renklere<br />
COLOR_BLACK v.b. gibi tanımlanmı¸s sabitlerle eri¸s<strong>ile</strong>bilir. Aslında renkleri tam olarak kullanabilmek için<br />
çiftleri tanımlamalısınız. Renkler daima çiftler halinde kullanılır. Bunun anlamı init_pair() i¸slevini kullanarak<br />
artalan ve karakter rengi için bir renk çifti belirtmeniz demektir. Bundan sonra bu renk çifti COLOR_PAIR()<br />
<strong>ile</strong> normal bir öznitelik olarak kullanılabilir. ˙Ilk ba¸sta karma¸sık gelebilir. Fakat bu zeki yakla¸sım renk çiftleri üz-<br />
http://belgeler.org Linux Kitaplı˘gı 28 / 90