Çok teşekkürler Ali abi :) ellerine sağlık olayı anladım.
Bende ufak ufak masa çervesini çizmeye başlıyorum. Aynı anda dcurses diye birleştiriciyi çıkarmaya başlıyorum. Senin örneklerini taban alarak devam ediyorum.
kartui.d
import dcurses;
import std.stdio;
struct masaSınırBölgesi{
int ls,rs,ts,bs,
tl,tr,bl,br;
}
struct masaYapısı{
int baslangicx,baslangicy;
int yükseklik, genişlik;
masaSınırBölgesi sınırBölgesi;
}
void main()
{
int c;
int row;
int col;
// Baştan bunu cağırmak şartmış
initscr();
getmaxy(stdscr,col);
getmaxy(stdscr,row);
// Bunların çağrılması öneriliyor
noecho();
cbreak();
noecho();
keypad(stdscr, TRUE);
row = 5;
col = 4;
mvprintw(1,1,"Cikmak icin q tusuna basin");
mvprintw(row,col,"Masa ");
while (c != 'q') {
c = getch();
}
// Temizlik
endwin();
}
void MasayıÇiz(masaYapısı m){
m.baslangicx = 10;
m.baslangicy = 20;
m.yükseklik = 30;
m.genişlik = 40;
}
dcurses.d
module dcurses;
extern (C){
enum TRUE = 1;
enum FALSE = 0;
alias void WINDOW;
WINDOW * initscr();
int getmaxy(WINDOW *win,int y);
int getmaxx(WINDOW *win, int x);
int raw();
int cbreak();
int noecho();
int nonl();
int start_color();
int init_pair(short pair, short f, short b);
int init_color(short color, short r, short g, short b);
bool has_colors();
bool can_change_color();
int color_content(short color, short *r, short *g, short *b);
int pair_content(short pair, short *f, short *b);
int intrflush(WINDOW * win, bool bf);
// Hile: extern NCURSES_EXPORT_VAR(WINDOW *) stdscr;
__gshared WINDOW * stdscr;
int keypad(WINDOW *win, bool bf);
int refresh();
int getch();
int printw(const char *fmt, ...);
int mvprintw(int x,int y,const char *fmt,...);
int endwin();
}
Türkçe karakter sorunu var. Onuda en sona bırakayım. Şuan çerçeveyi oluşturmaya devam ediyorum :).
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]