Avatar billede Xelot Nybegynder
10. april 2002 - 12:25 Der er 2 kommentarer og
1 løsning

Hvordan sætter jeg det bedst op?!

Hej.. jeg er ved at lave et program der skal kunne flytte en box med et navn rundt på skærmen. Man skal kunne bruge piletasterne, og jeg er i øjeblikket kommet så lang :

#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<dos.h>

void main()
{
up();
{
int i,navn[25],ch,x,y,z,s,b,c;
clrscr();
printf("\n Skriv dit navn (max 25 bogstaver) : ");
scanf("%s", &navn);
clrscr();
x=30;
y=10;
z=31;
s=20;
b=11;
c=51;
{
gotoxy(x,y);
putchar('É');
gotoxy(z,y);
putchar('Í');
for(i=1;i<s;i++)
putchar('Í');
putchar('»');
gotoxy(x,b);
putchar('º');
printf("%s", navn);
gotoxy(c,b);
putchar('º');
gotoxy(x,b+1);
putchar('È');
for(i=1;i<s+1;i++)
putchar('Í');
putchar('¼');
gotoxy(1,s+4);
for(i=1;i<90;i++)
putchar('Í');
gotoxy(1,s+5);
printf("Flyt boksen rundt p&#8224; sk&#8216;rmen med piletasterne, tryk 'Enter' for at afslutte");
ch=getch();
}
}

up()
{
if(ch=='72');
{
clrscr();
gotoxy(x+10,y);
putchar('É');
gotoxy(z+10,y);
putchar('Í');
for(i=1;i<s;i++)
putchar('Í');
putchar('»');
gotoxy(x+10,b);
putchar('º');
printf("%s", navn);
gotoxy(c+10,b);
putchar('º');
gotoxy(x+10,b+1);
putchar('È');
for(i=1;i<s+1;i++)
putchar('Í');
putchar('¼');
gotoxy(1,s+4);
for(i=1;i<90;i++)
putchar('Í');
gotoxy(1,s+5);
printf("Flyt boksen rundt p&#8224; sk&#8216;rmen med piletasterne, tryk 'Enter' for at afslutte");
getch();
}
}
}
}

Hvad skal jeg gøre for at få programemt til at virke?!
Avatar billede Xelot Nybegynder
10. april 2002 - 12:26 #1
Det skal måske lige siges at tegnene i boksen er anerledes, og at det er skrevet i 'C'.
Avatar billede laffe Nybegynder
10. april 2002 - 12:50 #2
Her er et lille eksempel på, hvordan du kunne gøre:

void DrawBox(char* Navn, int x,int y)
{
  // x,y er koordinaterne i øverste venstre hjørne af din tegning.
  // Navn er den streng der skal tegnes.

  // din position på skærmen er nu x,y.    Tegn din figur
  // relativt fra den position med gotoxy og putchar
 
 
}

void main()
{
  // start positionen
  char Navn[25];
  unsigned char ch;
  int x= 25;
  int y= 10;

  clrscr();
  printf("n Skriv dit navn (max 25 bogstaver) : ");
  scanf("%s", &Navn);
  clrscr();

  do
  {
    ch = getch();
    switch (ch)
    {
      case xx:  // op kan ikke huske værdien
        if (y>0) y--;
      break;
      case xx:  // ned kan ikke huske værdien
        if (y<24) y++;
      break;
      case xx:  // hojre kan ikke huske værdien
        if (x<79) x++;
      break;
      case xx:  // venstre kan ikke huske værdien
        if (y>0) x--;
      break;

      DrawBox(x,y);
    }
  }
}while ch != 27; // ESC
Avatar billede Xelot Nybegynder
12. april 2002 - 12:09 #3
Tak for hjælpen.. Jeg må nok indrømme at jeg ikke brugte dit foreslag, men det er vel rigtig nok alligevel
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester