GRY-Online.pl --> Archiwum Forum

Wyśrodkowanie tekstu w TP

09.11.2006
14:03
[1]

lo0ol [ Jónior ]

Wyśrodkowanie tekstu w TP

Halo

Czy jest komenda ktory umozliwia wysrodkowanie tekstu w turbo pascalu czy trzeba pieprzyc sie z GotoXY ?

09.11.2006
14:12
[2]

Azzie [ bonobo ]

Obawiam sie ze pascal to nie word :)

Ale napisz krotka funkcje ktora bedzie miala za parametr tekst do wysrodkowania, oblicz jego szerokosc i daj gotoxy :) raz sie pomeczysz a potem juz bedziesz mial na zawsze :)

09.11.2006
14:16
[3]

lo0ol [ Jónior ]

zeby cos takiego zrobic trzeba napisac skrypt ktory odejmuje polowe liczby znakow jednej linii tekstu w programie od calej szerokosci okna i pytanko ... jak napisac cus co bedzie wiedzialo/generowalo zmienna ilosci znakow w jednej linii ?

09.11.2006
14:22
smile
[4]

@$D@F [ Generaďż˝ ]

ja bym zrobil tak (na szybko)
1. zapisuje do pliku (tekst)
2. czyta kolejne znaki oraz x:=x+1, jak skonczy kasuje plik (erase(plik) )
3. x:=x/2
4 640/2=320
gotoxy(320-x,y)

09.11.2006
14:40
[5]

kastore [ Troll Slayer ]

Tylko że jemu chodziło o wyśrodkowanie w trybie tekstowym 80 znaków w poziomie.
I niestety trzeba sobie samemu napisać funkcje robiącą to.

procedure MyWrite(S : String);
begin
...if Length(S)<80 do GotoXY(40-(Length(S) div 2),WhereY);
...Write(S);
end;

Ta procedurka zrobi wyśrodkowanie jeżeli wyraz bedzie miał mniej niż 80 znaków, jak więcej to bufor ekranowy sam sobie go obrobi.
To tak na szybko, trzeba by było jeszcze określić czy warunki graniczne dobrze zrobilem.

09.11.2006
14:41
[6]

mikmac [ Senator ]

a skad pomysl, ze masz 640 znakow w linii?
Nie pamietam jak dziala gotoxy ale na pewno powyzszy sposob zadziala zle do od liczby pixeli w poziomie odejmie liczbe znakow - nie wiem co to ma dac...
z tego co pamietam to w trybie tekstowym masz 80 znakow na 25 linii. Jak gotoxy dziala w trybie graficznym to masz rowno przerabane ;P

© 2000-2026 GRY-OnLine S.A.