Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Czyszczenie tekstu z jednej linijki.

Ostatnio zmodyfikowano 2011-04-27 15:00
Autor Wiadomość
G.H.O.S.T.
Temat założony przez niniejszego użytkownika
Czyszczenie tekstu z jednej linijki.
» 2011-04-26 17:06:11
Cześć próbuje zrobić aby mój tekst migał więc wpadłem na taki pomysł.

   
C/C++
for( int i = 1; i <= 4; i++ )
{
    Sleep( 1000 );
    cout << "              Czy napewno chcesz wyjsc z programu ? wpisz T/N" << endl;
    Sleep( 1000 );
    system( "cls" );
}
cout << "              Czy napewno chcesz wyjsc z programu ? wpisz T/N" << endl;
To jest część kodu. Jak go skompiluje to ten tekst mi zaczyna migać ale jest skutek uboczny. Kiedy usuwa tekst czyści całą konsolę. A ja bym chciał aby tylko ten wiersz mi usuwało. Bo w swoim kodzie przed tą operacją mam inny tekst którego nie chciałbym usuwać. Czy jest jakiś sposób a może jest inny sposób na miganie tekstu ???
P-32034
pekfos
» 2011-04-26 17:07:41
wywal endl z linijki i dopisz odpowiednią ilość znaku '\b'. zaraz napiszę przykład..

C/C++
void pisz_i_skasuj( string txt ) {
    cout << txt;
    Sleep( 1000 );
    for( int a = 0; a < txt.size(); a++ ) cout << "\b \b"; //poprawione :P
   
    Sleep( 500 );
}
P-32035
ison
» 2011-04-26 17:42:26
@pekfos jeszcze musisz białymi znakami zapełnić, '\b' cofnie tylko kursor
zamiast
C/C++
"\b"
wypisuj
C/C++
"\b \b"
P-32039
G.H.O.S.T.
Temat założony przez niniejszego użytkownika
» 2011-04-26 18:39:43
Coś nie czaję. \b służy do przesunięcia kursora o jedno ale nie kasuje tekstu. I tę funkcję co podałeś to ma argument ?? czyli powinna mieć typ który coś zwraca np. int ?

EDIT:
Powiedzcie też przy okazji jak dodać sourca tak jak wy w taką ramkę bo w pierwszym poście mam taką czarną.
P-32048
SeaMonster131
» 2011-04-26 18:43:47
Powiedzcie też przy okazji jak dodać sourca tak jak wy w taką ramkę bo w pierwszym poście mam taką czarną.
[cpp] kod [cpp]
P-32050
pekfos
» 2011-04-26 19:33:29
@SeaMonster131: brawo..
P-32053
ison
» 2011-04-26 20:12:05
Coś nie czaję. \b służy do przesunięcia kursora o jedno ale nie kasuje tekstu. I tę funkcję co podałeś to ma argument ?? czyli powinna mieć typ który coś zwraca np. int ?
nie musi nic zwracać

C/C++
#include <windows.h>
#include <iostream>
#include <string>

using namespace std;

void pisz_i_skasuj( string txt ) {
    cout << txt;
    Sleep( 1000 );
    for( int a = 0; a < txt.size(); a++ ) cout << "\b \b";
   
    Sleep( 500 );
}

int main()
{
    pisz_i_skasuj( "text1" );
    pisz_i_skasuj( "text2" );
    pisz_i_skasuj( "text3" );
}
P-32062
G.H.O.S.T.
Temat założony przez niniejszego użytkownika
» 2011-04-27 15:00:12
Dziękuje teraz rozumiem. Zamykam ! :)
P-32086
« 1 »
  Strona 1 z 1