
Шустрый

Профиль
Группа: Участник
Сообщений: 56
Регистрация: 22.3.2009
Где: Украна, Донецк
Репутация: нет Всего: нет
|
Как сделать в появившемся окошке по ALT+T выбор пунктов меню... голову ломаю( | Код | #include<stdio.h> #include<graphics.h> #include<conio.h> #define DR "c:\\tc\\bgi\\"
void menu(int, int); void blok(int, int); void ends(int, int);
main() { int gd=VGA, error; int gm=VGAHI,x,y,x2,y2,xm,ym,f,xx,xx2,xl1,xl2; char key,key2; xx=0;xl1=0;xl2=0; xx2=0; xm=0; ym=0; x=2; x2=60; y=16; y2=32; initgraph(&gd,&gm,DR); error=graphresult(); if(error!=0) { printf("Error:%s\n",grapherrormsg(error)); printf("Press any key"); getch(); return 1;//exit(1); } setbkcolor(BLUE); cleardevice(); blok(xm,ym); bar(x,y,x2,y2); menu(xm,ym); do { key=getch(); switch(key) { case 77://--> x+=60; x2+=60; cleardevice(); blok(xm,ym); bar(x,y,x2,y2); menu(xm,ym); break; case 75://<-- x-=60; x2-=60; cleardevice(); blok(xm,ym); bar(x,y,x2,y2); menu(xm,ym); break; case 20: // ALT+T tools xx=300; xx2=370; cleardevice(); blok(xm,ym); setfillstyle(1,WHITE); bar(300,16,450,100); setfillstyle(1,GREEN); bar(xx,16,xx2,32); menu(xm,ym); outtextxy(310,40, "Find ..."); outtextxy(310,55, "Find Object >"); key2=getch(); switch(key2) { case 72://^ break; case 80: //vniz xl1+=20; xl2+=20; cleardevice(); blok(xm,ym); setfillstyle(1,GREEN); bar(300+xl1,16,450+xl2,16); break; } break;
default:break; } } while(key!=45);//Alt+X ends(150,250); } void menu(int x1, int y1) //Vivod menu stroki sostiania { /******Glavnoe menu******/ outtextxy(x1+300,y1+4,"Disk Editor");
outtextxy(x1+10,y1+21, "Object"); outtextxy(x1+70,y1+21, "Edit"); outtextxy(x1+130,y1+21,"Link"); outtextxy(x1+190,y1+21,"View"); outtextxy(x1+250,y1+21,"Info"); outtextxy(x1+310,y1+21,"Tools"); outtextxy(x1+370,y1+21,"Help"); outtextxy(x1+430,y1+21,"More>"); /******Nijnia strokaя******/ outtextxy(x1+10,y1+470,"Exit(Alt+X)"); }
void blok(int x1, int y1) { setfillstyle(1,RED); setcolor(BLACK); bar(x1,y1,x1+640,y1+16);//bar dlia DISK Editor setfillstyle(1,WHITE); bar(x1,y1+16,x1+640,y1+32);// bar dlia menu bar(x1,y1+464,x1+640,y1+480);//bar dlia nizy setfillstyle(1,GREEN);//color for ykazatel } //Proshalnoe okno void ends(int x, int y) { cleardevice(); setbkcolor(MAGENTA); setcolor(GREEN); settextstyle(0,HORIZ_DIR,2); outtextxy(x,y,"GO O D B U Y ! ! !"); getch(); closegraph(); }
|
|