Giriş
Şu satırı dahil ederiz.
Açıklaması şöyle.
Linux'ta şöyle yaparız.
cbreak() metodu raw() metodunun tersidir. Ctrl + C ile çıkabilmesi sağlar. Şöyle yaparız.
ncurses olmadan şöyle yaparız.
Şöyle yaparız.
İlk çağrılması gereken metod.
Örnek
Şöyle yaparız
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
50 satırlık, 10 sütunlu 10,10 konumundan başlayan bir pencere açmak için şöyle yaparız. box() çağrısı ile kutu çizilir.
raw() metodu cbreak() metodunun tersidir. Ctrl + C ile çıkılmamasını sağlar.
Örnek
Şöyle yaparız.
Basılan tuşu okur. Açıklaması şöyle.
Şöyle yaparız.
Şöyle yaparız.
Şu satırı dahil ederiz.
#include <ncurses.h>
cursesAçıklaması şöyle.
curses is designed to manage your entire screen
Bu kütüphane Unix içindi. Açıklaması şöyle
The curses library is a terminal control library for Unix-like systems used in text based user interface applications. It has been used in many games in the past. It was developed by Ken Arnold and originally released with BSD Unix.
ncurses
Açıklaması şöyle. ncurses kullanmaya başlamadan önce ilk olarak initscr() metodu çağrılmalıdır.ncurses is an open-source clone of the original Unix curses library.Kurulum
Linux'ta şöyle yaparız.
apt-get install libncurses-dev
addch metodu
Kutu çizmek için şöyle yaparız
move(0,0); addch(ACS_ULCORNER); addch(ACS_HLINE); addch(ACS_URCORNER);
move(1,0); addch(ACS_LLCORNER); addch(ACS_HLINE); addch(ACS_LRCORNER);
cbreak metodu
int main ( int argc, char **argv) {
initscr();
cbreak();
noecho();
WINDOW* my_win=newwin(30, 30, 0, 0);
...
char *s = ...;
mvwprintw(my_win, 3, 5, s);
wrefresh(my_win);
endwin();
return 0;
}
clear metoduncurses olmadan şöyle yaparız.
system("clear");//for linux
system("cls");//for Windows
ncurses ile şöyle yaparızint tv = clear();
endwin metodu
terminali resetleyerek çıkmak için şöyle yaparız
endwin();
exit(0);
init_color metodu
// #define's for the COLOR_PAIRs
#define X_COLOR 1
#define O_COLOR 2
#define BG_COLOR 3
start_color();
init_pair(X_COLOR, COLOR_CYAN, COLOR_BLACK);
init_pair(O_COLOR, COLOR_GREEN, COLOR_BLACK);
init_pair(BG_COLOR, COLOR_YELLOW, COLOR_BLACK);
initscr metoduİlk çağrılması gereken metod.
Örnek
Şöyle yaparız
#include <stdio.h>
#include <curses.h>
#include <iostream>
int main()
{
int ch;
initscr(); // <----------- this
while (ch != 113)
{
ch = getch();
std::cout << ch << std::endl;
}
return 0;
}
ÖrnekŞöyle yaparız.
#include <ncurses.h>
int main()
{
initscr();
WINDOW *win = newwin(0,0,10,10);
delwin(win);
endwin();
return 0;
}
getmax metoduŞöyle yaparız.
int row, col;
getmaxyx(stdscr,row,col);
move metoduŞöyle yaparız.
move(1,0);
newpad metoduŞöyle yaparız.
// create pad
WINDOW* pad newpad (10000, col);
newwin metodu - lines + cols+ begin y + begin x50 satırlık, 10 sütunlu 10,10 konumundan başlayan bir pencere açmak için şöyle yaparız. box() çağrısı ile kutu çizilir.
#include <ncurses.h>
#include <iostream>
using namespace std;
int main(){
initscr();
WINDOW * win = newwin(50,10,10,10);
box(win,0,0);
wrefresh(win);
wgetch(win);
endwin();
return 0;
}
raw metoduraw() metodu cbreak() metodunun tersidir. Ctrl + C ile çıkılmamasını sağlar.
Örnek
Şöyle yaparız.
raw();
noecho();
wgetch metoduBasılan tuşu okur. Açıklaması şöyle.
Şöyle yaparız.When a character that could be the beginning of a function key is received (which, on modern terminals, means an escape character), curses sets a timer. If the remainder of the sequence does not come in within the designated time, the character is passed through; otherwise, the function key value is returned. For this reason, many terminals experience a delay between the time a user presses the escape key and the escape is returned to the program.
// initialization not shown initscr() should be enough for this test
while(!f_should_exit)
{
int c(wgetch(f_win_input));
// show codes of what the user types
//
printf("got [%d] ", c);
// prints 27 when I hit ESC
// prints 27 91 65 when I hit Arrow Up
}
wprintw metoduŞöyle yaparız.
char* fileName = ...;
WINDOW* pad = ...;
...
wprintw(pad,"Team #4 \"%s\"",fileName);
wmove metoduŞöyle yaparız.
WINDOW* pad = ...;
//print text contents to screen
wmove(pad,0,0);
Hiç yorum yok:
Yorum Gönder