En C++ nativo con Visual Studio Community 2019, tengo este código, que no se muestra el cursor.
Código
#include <iostream> #include <windows.h> // Para mostrar texto en el título de la ventana. #include <stdio.h> // Cambio color de fondo y letras. using namespace std; //using std::cout; //using std::cin; // Función posición del cursor. void gotoxy(int x, int y) { HANDLE hcon; hcon = GetStdHandle(STD_OUTPUT_HANDLE); COORD dwPos; dwPos.X = x; dwPos.Y = y; SetConsoleCursorPosition(hcon, dwPos); } int main() { // Mostrar caracteres correctamente en pantalla y título de la ventana. SetConsoleOutputCP(65001); wchar_t titulo[128]; MultiByteToWideChar(CP_UTF8, 0, "Título de la ventana. Win32 C++ 2019.", -1, titulo, 128); SetConsoleTitle(titulo); // Tamaño de la pantalla. Se cambia en los dos últimos dígitos. SMALL_RECT r = { 0, 0, 49, 9 }; // X = 49, Y = 9. SetConsoleWindowInfo(GetStdHandle(STD_OUTPUT_HANDLE), TRUE, &r); // Cambio color de 8 (gris), color letras 0 (negro). //system("color 80"); // Ocultar cursor. CONSOLE_CURSOR_INFO cci; GetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cci); cci.bVisible = 0; // 0 oculta. 1 muestra cursor. SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cci); // Mostrar textos en pantalla. cout << "Terminarías. Conocerías. Título. Analógico. \n"; cout << "Muchas gracias mi muy distinguido amigo."; // Limpiar pantalla. system("cls"); // Mostrar textos en pantalla. cout << "Se escribe este texto después de haber " << endl; cout << "borrado el anterior." << endl; // Posición del cursor. gotoxy(5, 5); cout << "Posición." << endl; // Ocultar cursor. CONSOLE_CURSOR_INFO cci2; GetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cci2); cci2.bVisible = 1; // 0 oculta. 1 muestra cursor. SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cci2); // Esperando pulsar Enter para salir. cin.get(); return 0; }
Si quito este código.
Código
// Cambio color de 8 (gris), color letras 0 (negro). system("color 80");
Se muestra el cursor parpadeando como siempre.
¿Esto es normal?
Para mi no lo es, una cosa es cambiar el color de la ventana y letras, es independiente al parpadeo del cursor si está activado o no.
Saludos.