Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- // Verifica o sistema operacional (_WIN32, _WIN64)
- #ifdef _WIN32
- // Utilizado para fazer a pausa
- #include <windows.h>
- #else
- #error S.O. NAO SUPORTADO
- #endif
- using namespace std;
- #define BLOCK 0xDB
- #define EMPTY 0x20
- class progress_bar
- {
- private:
- unsigned short tamanho;
- unsigned short progresso;
- public:
- progress_bar( unsigned short p, unsigned short t )
- {
- setTamanho( t );
- setProgresso( p );
- }
- progress_bar()
- {
- setTamanho( 20 );
- setProgresso( 0 );
- }
- void show()
- {
- int block;
- int qtd = 0;
- cout << " |";
- for( block=0; block<getTamanho(); block++ )
- {
- if( qtd < (getTamanho()*getProgresso())/100 )
- {
- cout << char(BLOCK);
- qtd++;
- }
- else
- cout << char(EMPTY);
- }
- cout << "| " << getProgresso() << "%\r\r";
- }
- void setTamanho( unsigned short t )
- {
- tamanho = t;
- }
- unsigned short getTamanho()
- {
- return tamanho;
- }
- void setProgresso( unsigned short p )
- {
- progresso = p;
- }
- unsigned short getProgresso()
- {
- return progresso;
- }
- };
- int main()
- {
- progress_bar progress(0, 20);
- cout << "\n progress bar simples em ascii: \n\n";
- for( int i=0; i<=100; i++)
- {
- progress.setProgresso(i);
- progress.show();
- Sleep( 500 );
- }
- system("pause>nul");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement