Mam takie pytanie: czy istnieje polecenie dzięki któremu można wyczyścić ekran w programnie nie używając sposobu przesuwania o np. 50 linijek?, a jeżeli istnieje to czy mógłbym prosić o podanie go?
Z góry dzięki.
Ryba
Jaki język?!
Jaki system?!
ech....
Jeśli DOS, to możesz zrobić tak, jak działa polecenie CLS.
- Odczyt aktualnego trybu graficznego
- Zmiana trybu na aktualny
Może brzmi to dziwnie, ale przy ustawianiu trybu (ostatni bit wyzerowany) to bufor karty video jest czyszczony.
Inny (gorszy imo) sposób: Możesz również pobrać adres bufora video i go wyczyścić. Będzie to zapewne: b800:0 -> tryb tekstowy, kolorowy b000:0 -> tryb tekstowy, czarno-biały a000:0 -> tryb graficzny ale nie dam głowy, że w jakiś trybach nie będą inne a koniec bufora? zależny od trybu
Jeśli jest to pod DOSem i wiesz, że np. używasz tylko trybu 3 (tekstowy, 80x25 znaków, 16 kolorów) to możesz od razu wywoływać ten tryb jeśli chcesz wyczyścić bufor:
mov ax,3
int 10h
łaaaa sorrki zapomniałem dodać .. o Adę 95 chodzi;p
sorrki;]
//a co z systemem operacyjnym? albo informacją o jaki tryb chodzi? ech... - M
//a co z systemem operacyjnym? albo informacją o jaki tryb chodzi? ech... - M
A po co to? Nie każdy ogranicza się do języków niskiego/średniego poziomu.
Jeśli chodzi o procedurę czyszczącą ekran... Osobiście nie znalazłem nic poza procedurą New_Page, ale chyba najpierw trzeba będzie ustawić długość strony. Jeżeli się nie mylę to będzie to działało jak New_Line (Dlugosc_Strony);. Jednak coś raczej musi być, poszukaj dokładnie (polecam źródła paczek).
edit:
Pod Linuxem możesz spróbować po prostu uruchomić "clear", lecz psuje to portowalność kodu, oczywiście.