NCURSES - Parte II
Publicado por Leonardo Barrozo dos Santos 11/03/2003
[ Hits: 5.406 ]
Programa utilizado no artigo - Utilizando NCURSES - Parte II
#include <curses.h> //Incluiremos a biblioteca ao nosso sistema #include <stdio.h> void sair (void); //Esta função fará com que o programa seja fechado int main(void) { int intKey; //Variável que receberá as teclas passada pelo usuário WINDOW *janela1, *janela2; initscr(); /* Esta função inicializa a ncurses. Para todos os programas devemos sempre inicializar a ncurses e depois finalizar, como veremos adiante. */ start_color(); //Esta função torna possível o uso das cores //Abaixo estamos definindo os pares de cores que serão utilizados no programa init_pair(1,COLOR_WHITE,COLOR_BLUE); init_pair(2,COLOR_BLUE,COLOR_WHITE); init_pair(3,COLOR_RED,COLOR_WHITE); init_pair(4,COLOR_GREEN,COLOR_BLACK); bkgd(COLOR_PAIR(1)); /*Aqui nós definiremos que a cor de fundo do nosso programa será azul e a cor dos textos será branca.*/ for(;;) { attron(COLOR_PAIR(3)); /* Estamos alterando o par de cores para 3 em vez de utilizar o par de cor por omissão(1). */ mvprintw(2,1,"Menu Principal"); // Imprimimos um texto na tela na linha 2, coluna 1 attroff(COLOR_PAIR(3)); /* Estamos alterando o par com a cor por omissão, ou seja, retornando para o par de cor 1. */ attron(COLOR_PAIR(2)); mvprintw(4,5,"1. Janela 1"); //Imprimimos um texto na tela na linha 4, coluna 5 mvprintw(5,5,"2. Janela 2"); //Imprimimos um texto na tela na linha 5, coluna 5 mvprintw(6,5,"3. Sair"); //Imprimimos um texto na tela na linha 6, coluna 5 mvprintw(8,5,"3. Digite sua opção: "); //Imprimimos um texto na tela na linha 8, coluna 5 intKey = getch(); attroff(COLOR_PAIR(2)); refresh(); //Atualiza a tela switch (intKey) { case 1: janela1 = newwin(5, 40, 5, 10); /*Criaremos uma no janela com 5 linhas, 40 colunas e que aparecera na coluna 5, linha 10 */ wbkgd(janela1,COLOR_PAIR(4)); //Definiremos a cor de fundo da janela1 //Abaixo imprimiremos um texto dentro da janela1 wattron(janela1, A_BOLD); mvwprintw(janela1,2,1,"JANELA1 Verde com A_BOLD. Aperte qualquer tecla para sair."); wattroff(janela1, A_BOLD); wrefresh(janela1); //Atualizaremos a janela1 wgetch(janela1); //Esperaremos que alguma tecla seja apertada delwin(janela1); //Deletaremos a janela break; case 2: janela2 = newwin(5, 40, 5, 10); /*Criaremos uma no janela com 5 linhas, 40 colunas e que aparecera na coluna 5, linha 10 */ wbkgd(janela2,COLOR_PAIR(4)); //Definiremos a cor de fundo da janela2 box(janela2, ACS_VLINE, ACS_HLINE); //Aqui colocaremos uma borda na janela2 //Abaixo imprimiremos um texto dentro da janela2 mvwprintw(janela2,2,2,"JANELA2 Verde sem A_BOLD. Aperte qualquer tecla para sair."); wrefresh(janela2); //Atualizaremos a janela2 wgetch(janela2); //Esperaremos que alguma tecla seja apertada delwin(janela2); //Deletaremos a janela break; case 3: sair(); // Sai do programa break; } refresh(); //Atualiza a tela } } void sair() { endwin(); /* Sempre que finalizarmos um programa com a biblioteca curses, devemos executar este comando. */ exit(0); }
Nenhum comentário foi encontrado.
Como agendar um backup automático do PostgreSQL no Cron evitando o problema de senha
Como preparar o Vim/Neovim para corrigir ortografia em português
Dark Web e Malwares na internet, quanto custa?
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Como verificar o hash de um arquivo baixado da Internet e como criar um hash
Debian 12 - IPTABLES - removendo NFTABLES
OverWatch 2 - Abrindo portas do jogo no Iptables.
Como instalar o adaptador wifi USB Intelbras ACtion A1200 no Linux Mint
Como normalizar seus arquivos MP3 para que fiquem no mesmo volume
Instalação do Programa Imposto de Renda Pessoa Física 2023 [RESOLVIDO]... (6)
Instalando e compilando o GCC/G++ erro (4)
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba
[Shell Script] Tire screenshots com Scrot facilmente com Zscrot
[Shell Script] DioPSI - Script multidistro para instalar programas
[Shell Script] ARS Vídeos - Cortador de vídeos e webcam shooter