[C++] Clearscreen

Pagina: 1
Acties:

  • Freak187
  • Registratie: November 2000
  • Laatst online: 12-09 09:55
Ik ben momenteel bezig om een grafische lift te ontwerpen met Borland c++, ik doe dit in de dos mode. Alleen ik kan nergens een clearscreen functie vinden. Als iemand me hieraan zou kunnen helpen zou ik er erg dankbaar voor zijn.

Kia Niro-EV 2024


  • whoami
  • Registratie: December 2000
  • Laatst online: 15:57
Doe je het in graphics mode of in textmode?

textmode : clrscr()

https://fgheysels.github.io/


Verwijderd

of

#include <process.h>
..
system("cls");

  • Freak187
  • Registratie: November 2000
  • Laatst online: 12-09 09:55
Ik doe het in de grafische mode, heb ik al in de eerste post gezegd. En let op: het is Borland C++, niet die van microsoft, die gebruikt hele andere functie's.

Kia Niro-EV 2024


  • Freak187
  • Registratie: November 2000
  • Laatst online: 12-09 09:55
Ik weet niet of dit gebruikelijk is, maar ik post ff de code. Het probleem is dat in de while loop de rectangle steeds opnieuw getekend wordt waardoor een wit blok ontstaat en er dus een clrscr nodig is, ik heb clrscr();, clearscreen();, system("clr"); geprobeert.

#include <conio.h>
#include <iostream.h>
#include <dos.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <process.h>
int i,k;

void main() {
int driver = VGA, mode = VGAHI;
initgraph( &driver, &mode, "..\\bgi" );
setbkcolor( BLUE );
setcolor( WHITE );
rectangle( 90, 40, 180, 320 );
line (0, 40, 90, 40);
line (0, 110, 90, 110);
line (0, 180, 90, 180);
line (0, 250, 90, 250);
line (0, 320, 90, 320);
outtextxy( 20, 60, "derde");
outtextxy( 20, 70, "etage");
outtextxy( 20, 130, "tweede");
outtextxy( 20, 140, "etage");
outtextxy( 20, 200, "eerste");
outtextxy( 20, 210, "etage");
outtextxy( 20, 270, "begane");
outtextxy( 20, 280, "grond");
outtextxy( 345, 245, "druk 1 voor eerste verdieping");
i=50;
k=100;
while (i != 120){
i++;
k++;
rectangle( 100, i, 170, k );
}
getch();
closegraph();
}

Kia Niro-EV 2024


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

gebruik ff [code] en [./code] (zonder .)

Doet iets met Cloud (MS/IBM)


Verwijderd

Op maandag 11 maart 2002 14:31 schreef GrAviTy het volgende:
of

#include <process.h>
..
system("cls");
en als je nu
code:
1
2
3
4
setbkcolor( BLACK );
//of
setcolor( BLACK );
rectangle( 0, 0, breedte, hoogte );

dan is je scherm toch ook leeg?

  • PromWarMachine
  • Registratie: Oktober 2001
  • Laatst online: 15:55

PromWarMachine

Forsaken Archer

Wij gebruiken Borland command compiler in een editor, helaas alleen voor console programma's, maar dit terzijde. Wij doen het op deze manier en dat werkt perfect:
code:
1
2
3
4
5
6
7
#include <conio.h>

void main()
{
  clrscr();

}

Gebruik je Dev C++ dan is er iets faags aan de hand, moet je ergens conio.o bij je project voegen, maar dat weet ik nog niet precies, krijg ik woensdag of vrijdag van m'n leraar te horen :)

Dividend for Starters


  • whoami
  • Registratie: December 2000
  • Laatst online: 15:57
Op maandag 11 maart 2002 14:31 schreef GrAviTy het volgende:
of

#include <process.h>
..
system("cls");
Als je het zo doet, dan ben je volgens mij wel uw 'grafische mode' kwijt.

https://fgheysels.github.io/


  • whoami
  • Registratie: December 2000
  • Laatst online: 15:57
Op dinsdag 12 maart 2002 00:40 schreef PromWarMachine het volgende:
code:
1
2
3
4
5
6
7
#include <conio.h>

void main()
{
  clrscr();

}
Dit werkt niet in grafische modus.

https://fgheysels.github.io/


Verwijderd

Zoals ik eerder beschreven heb kun je toch best het scherm met een zwarte rectangle opvullen.

Verwijderd

in grafische mode moet je
cleardevice() ipv clrscr() gebruiken :)

volgens mijn c++ boekje ;)

Verwijderd

dit werkt ook:
code:
1
  printf("\e[2J");

dit is een zgn escape-code :)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 11-09 08:26

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op dinsdag 12 maart 2002 20:00 schreef ne0 het volgende:
dit werkt ook:
code:
1
  printf("\e[2J");

dit is een zgn escape-code :)
jou je daar geen dubbele backslash van maken?
code:
1
printf ("\\e[2J");

dus :)
werkt alleen met een ANSI-compatible console overigens

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • whoami
  • Registratie: December 2000
  • Laatst online: 15:57
Op dinsdag 12 maart 2002 19:44 schreef gerpju het volgende:
in grafische mode moet je
cleardevice() ipv clrscr() gebruiken :)

volgens mijn c++ boekje ;)
Nu je het zegt, dit was em idd. 't Is al weer een tijd geleden dat ik nog DOS progjes gebouwd heb in C++.

https://fgheysels.github.io/


Verwijderd

Op dinsdag 12 maart 2002 20:06 schreef OiSyN het volgende:

[..]

jou je daar geen dubbele backslash van maken?

code:
1
printf ("\\e[2J");



dus :)
Nee! dan krijg je
code:
1
\e[2J

op je scherm!

\e is asci code 033 (escape), net als \n Return is :)
werkt alleen met een ANSI-compatible console overigens
Sure, maar dat zijn ze bijna allemaal :)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 11-09 08:26

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op woensdag 13 maart 2002 14:32 schreef ne0 het volgende:

[..]

Nee! dan krijg je
code:
1
\e[2J

op je scherm!
ah ok i stand corrected
ik dacht namelijk dat dat ook de bedoeling was, want ik dacht dat ascii codes begonnen met een \
maar nu je het zegt begonnen ze idd altijd met zo'n pijltje naar links (esc dus :))
Sure, maar dat zijn ze bijna allemaal :)
Neuh voor DOS moest je altijd zo'n aparte driver laden. Dat was in de tijd van BBS'en altijd een vereiste, want anders kwamen die codes altijd op het schem ipv dat de kleuren veranderden enzo, dus daarom moest je ansi.sys in je config.sys laden :) Die goeie ouwe tijd :z

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

[quote]
Op woensdag 13 maart 2002 18:20 schreef OiSyN het volgende:
[..]
Neuh voor DOS moest je altijd zo'n aparte driver laden. Dat was in de tijd van BBS'en altijd een vereiste, want anders kwamen die codes altijd op het schem ipv dat de kleuren veranderden enzo, dus daarom moest je ansi.sys in je config.sys laden :) Die goeie ouwe tijd :z
Ojah, sure :) helemaal right.
Ik heb ooit nog geleerd die codes in batch-files te stoppen om bijv. een menu te maken, goeie ouwe tijd idd :P

Maar met een console in windows hoeft dat niet meer :9
Pagina: 1