Pergunta

Vamos ter uma situação em que o seguinte programa imprime cerca de 10 linhas de #

for(i=0;i<10;i++)
prinf("\n#");

Agora, como voltar a 5ª linha e editar que # e mudar a cor do mesmo sem limpar a tela ou limpar a seguir 5 linhas?

Eu tentei

window(5,0,20,20);
textcolor(GREEN);
cprintf("#");

mas não é a edição que um, mas está imprimindo no lado do one.why original?

Existe alguma outra maneira de fazê-lo e mudar a cor do texto já impresso dinamicamente? por favor ambiente ajuda me..my é turbo c no Windows

Foi útil?

Solução

função de janela geralmente criar uma janela a partir de 1º de duas coordenadas de pixel ou seja, no seu exemplo (5,0) ao pixel apontado por próximos 2 coordenadas. para que o seu programa deve funcionar

experimentá-lo ou utilização outra gotoxy ()

Outras dicas

Parece que você está misturando printf e outra biblioteca de saída - isso não é recomendado. espera printf para ser enviado a um terminal de caracteres, enquanto a biblioteca de saída em questão pode falsly assumir que ele tem acesso exclusivo (e misbehave poder.)

Com base em uma função, você está provavelmente a utilizar conio.h. A documentação pode ser encontrada aqui , com um índice mostrando cada função disponível. A partir desse índice, você deve ser capaz de detectar a função imediatamente.

A função de janela não faz o que você quer que ele, uma vez que só define a área em que o cursor pode alterar o texto - não mover o cursor, você precisa usar as outras funções de biblioteca.

-1: Algumas dicas para postar perguntas de casa:

1) Obter o direito pergunta! O código postado não executa como a descrição estados:

 for(i=0;i<10;i++)
    prinf("#");

Isto irá imprimir 10 caracteres # em uma linha, como não existe um caracter de fim de linha. A descrição fala originais sobre "imprimir 10 linhas."

2) Dê detalhes necessários: Que ambiente você está usando: Windows? Linux? O compilador? É este um ambiente baseado em texto janelas ou?

3) STFW antes de postar. Procure por "ANSI Sequências de Escape" ou "posicionar o cursor."

talvez-

cprintf("\b#");

'b' é para backspace

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top