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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

"Choice 6",<br />

"Choice 7",<br />

"Exit",<br />

};<br />

int main()<br />

{ ITEM **my_items;<br />

int c;<br />

MENU *my_menu;<br />

int n_choices, i;<br />

ITEM *cur_item;<br />

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

/* Curses kipini ilklendir */<br />

initscr();<br />

start_color();<br />

cbreak();<br />

noecho();<br />

keypad(stdscr, TRUE);<br />

init_pair(1, COLOR_RED, COLOR_BLACK);<br />

init_pair(2, COLOR_GREEN, COLOR_BLACK);<br />

init_pair(3, COLOR_MAGENTA, COLOR_BLACK);<br />

/* Ö˘geleri ilklendir */<br />

n_choices = ARRAY_SIZE(choices);<br />

my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *));<br />

for(i = 0; i < n_choices; ++i)<br />

my_items[i] = new_item(choices[i], choices[i]);<br />

my_items[n_choices] = (ITEM *)NULL;<br />

item_opts_off(my_items[3], O_SELECTABLE);<br />

item_opts_off(my_items[6], O_SELECTABLE);<br />

/* Menüyü olu¸stur */<br />

my_menu = new_menu((ITEM **)my_items);<br />

/* Menünün ön ve arka fon rengini ayarla */<br />

set_menu_fore(my_menu, COLOR_PAIR(1) | A_REVERSE);<br />

set_menu_back(my_menu, COLOR_PAIR(2));<br />

set_menu_grey(my_menu, COLOR_PAIR(3));<br />

/* Menüyü ekrana yaz */<br />

mvprintw(LINES – 3, 0,<br />

"Seç<strong>ile</strong>n ö˘geyi görmek için ’a basınd");<br />

mvprintw(LINES – 2, 0,<br />

"Hareket etmek için Yukarı ve A¸sa˘gı tu¸slarını kullanın "<br />

"(Çıkmak için F1)");<br />

post_menu(my_menu);<br />

refresh();<br />

wh<strong>ile</strong>((c = getch()) != KEY_F(1))<br />

{ switch(c)<br />

{ case KEY_DOWN:<br />

menu_driver(my_menu, REQ_DOWN_ITEM);<br />

break;<br />

case KEY_UP:<br />

menu_driver(my_menu, REQ_UP_ITEM);<br />

break;<br />

case 10: /* Enter */<br />

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

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

Saved successfully!

Ooh no, something went wrong!