2015-05-08 3 views
0

У меня есть простая программа на C, представляющая экран загрузки в консоли, но я не могу заставить курсор скрываться. Я попытался прокрутить скорость функции сна, чтобы таймер курсора был сброшен, и курсор исчезнет, ​​но это не сработает.Как скрыть курсор в c?

Любые советы о том, как скрыть курсор.

Код:

#include <stdio.h> 
#include <stdlib.h> 

const int TIME = 1; 

int main(int argc,char *argv[]){ 
    int i; 
    while (1){ 
     printf("loading"); 
     for (i=0;i<3;i++){ 
      sleep(TIME); 
      printf("."); 
     } 
     sleep(TIME); 
     printf("\r"); 
     system("Cls"); 
     sleep(TIME); 
    } 
} 
+0

Я думаю, что вам нужно 'conio.h' на Windows/DOS, вместо' системы («ЦБС») 'и такие, pehaps вы должны быть в состоянии контролировать cursro слишком , На * nix os's есть некоторые контрольные символы, чтобы сделать это, я не знаю, что эквивалент должен быть в окнах. –

+0

Возможный дубликат [Скрыть курсор на удаленном терминале] (http://stackoverflow.com/questions/2649733/hide-cursor-on-remote-terminal)? –

+0

@iharob, я не знаю, что делает 'conio.h', и я не знаю, какие правильные данные при использовании. – BRHSM

ответ

2

Добавить в программе следующую функцию

#include <windows.h> 

void hidecursor() 
{ 
    HANDLE consoleHandle = GetStdHandle(STD_OUTPUT_HANDLE); 
    CONSOLE_CURSOR_INFO info; 
    info.dwSize = 100; 
    info.bVisible = FALSE; 
    SetConsoleCursorInfo(consoleHandle, &info); 
} 

и назвать его в main.

И далее в MSDN

+0

При запуске появляется небольшое мигание курсора, но это дает классный эффект. вроде как вы запускаете большую программу, у которой есть немного проблем при запуске ха-ха. – BRHSM

Смежные вопросы