Top.Mail.Ru
Ответы

Помогите с прогой на си

помогите прогу доделать(клиент-borland C), а то завтра зачет, а в голову ничего не идет =(. в общем суть в том, чтобы при нажатии на определенную область выводился текст из файла, а потом при нажатии на стрелки клавиатуры он двигался соответственно. проблема в подключении клавиатуры. никак не получается. буду благодарен, если поможете. хотя бы ссылками на материал по клавиатуре. а так имеющийся код:
# include <conio.h>
# include <stdio.h>
# include <stdlib.h>
# include <dos.h>
# include "sysp.h"
# include <process.h>

int botm, i;
MOUSE_STATE state;
int q;
void redraw(int, int);

main(void)

{
_wscroll=0;
textmode(64);

textbackground(BLACK);
clrscr();

window(1,2,80,2);
textattr(GREEN+RED);
for(q=1;q<=79;q++){cputs("Н");
textbackground(1);}

window(1,2,1,50);
textbackground(1);
clrscr();
cputs("Й");
for(q=1;q<=47;q++){cputs("\nє");}
textattr(GREEN+RED);
textbackground(1);

window(1,50,80,50);
textbackground(1);
clrscr();
cputs("И");
for(q=1;q<=79;q++){cputs("Н");}

window(80,2,80,50);
textbackground(1);
clrscr();
cputs("»");
for(q=1;q<=47;q++){cputs("\nє");}
cputs("\nј");

window(1,1,80,1);
textattr(BLACK);
textbackground(15);
cputs("File Edit Window ");

window(2,3,79,49);
textattr(BLACK);
textbackground(WHITE);
clrscr();
cputs("Hello, World!");
_wscroll=1;
ms_on();
int a1, b1;
a1=1;
b1=1;
redraw(a1,b1);

while(!kbhit())
{
ms_querp(&state,0);
if (state.bottoms == 0)
{
if ((state.x >=1) && (state.x <=30) && (state.y >= 1) && (state.y <= 7))
{
window(2,3,9,10);
textbackground(BLUE);
textattr(YELLOW);
cputs("\nSave ");
cputs("\nLoad ");
cputs("\nQuit ");

}

}
}
return 0;
}

void redraw(int a, int b)
{
int i;
char buff[20];
clrscr();
FILE *ff;
i=0;
if ((ff=fopen("bb.txt","r"))==NULL)
{exit(1);}
else
{
while (!feof(ff))
{
gotoxy(a,b+i);
fgets(buff,20,ff);
cputs(buff);
i++;
}
fclose(ff);
}
}

По дате
По рейтингу
Аватар пользователя
Гуру
16лет

стучи в агент, попробую помочь

Аватар пользователя
Профи
16лет


Видео по теме