Avatar billede sempai_peter Nybegynder
14. januar 2004 - 09:46 Der er 6 kommentarer

Centrer tekst på skærmen

Hej.

Hvordan centrer man tekst man har skrevet til skærmen.
Jeg bruger printf(""); til at skrive til skærmen.

mvh
Peter
Avatar billede arne_v Ekspert
14. januar 2004 - 10:02 #1
Du kan med ikke standard (platform specifikke) kald finde skærm bredden
og selv sætte det nødvendige antal spaces ind.
Avatar billede goatshrine Nybegynder
14. januar 2004 - 10:05 #2
gotoxy(x,y);
og skriv ud.
Avatar billede bertelbrander Novice
14. januar 2004 - 20:40 #3
Måske noget i stil med dette:

#include <windows.h>
#include <stdio.h>

void print_center(const char *msg)
{
  HANDLE con = GetStdHandle(STD_OUTPUT_HANDLE);
  COORD coord;
  CONSOLE_SCREEN_BUFFER_INFO ConsoleInfo;

  GetConsoleScreenBufferInfo(con, &ConsoleInfo);
  coord.X = (ConsoleInfo.dwSize.X - strlen(msg))/2;
  coord.Y = ConsoleInfo.dwCursorPosition.Y;
  SetConsoleCursorPosition(con, coord);

  printf("%s\n", msg);
}

int main(void)
{
  print_center("Hello World");
  print_center("This should be put at the center of the screen");

  return 0;
}
Avatar billede acid-head Nybegynder
14. januar 2004 - 23:33 #4
void center(char streng[])
{
    int a;
    a = floor((80-strlen(streng))/2);
    for(int i=0;i<a;i++)
        cout << " ";
    cout << streng;
}

Her er forudsat er consolbredden er 80, hvilket den normalt også er..
Avatar billede bertelbrander Novice
14. januar 2004 - 23:50 #5
>acid-head
Underligt, min konsol har 125 tegn...
Din floor() er vist overflødig.
Min din løsning vil virke på andet end windows.
Avatar billede acid-head Nybegynder
15. januar 2004 - 00:27 #6
Synes da det er rimelig standard at en konsol er 80x25..? Men selvfølgelig kan der da være mange undtagelser..
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