Løst: skjul markøren

Sidste ændring: 09/11/2023
Forfatter: C SourceTrail

Jo da. Her er en måde, vi kan gribe dette an på:

Som udvikler kan du ofte stå over for scenarier, hvor du skal programmere grafiske brugergrænseflader. Et sådant tilfælde kunne involvere at skjule markøren. Selvom det kan virke skræmmende, skal du ikke bekymre dig. C++ tilbyder en meget enkel måde at opnå dette på.

Ved at bruge en specifik Windows API-funktion kan vi nemt manipulere markøren. I Windows kan konsolmarkørens synlighed skiftes ved hjælp af `ShowConsoleCursor()`-funktionen, som er erklæret i windows.h-header-filen. Lad os se løsningen i detaljer.

#include
void ShowConsoleCursor(bool showFlag){
HANDLE out = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO cursorInfo;
GetConsoleCursorInfo(ud, &cursorInfo);
cursorInfo.bVisible = showFlag;
SetConsoleCursorInfo(ud, &cursorInfo);
}

I funktionen `ShowConsoleCursor` sender vi en boolsk værdi, der repræsenterer markørens synlighedsstatus. "sand" angiver synlighed, "falsk" angiver, at den skal skjules.

Om Windows.h-headeren

  • Windows.h er en Windows-specifik header-fil til programmeringssprogene C og C++, som indeholder erklæringer for alle funktionerne i Windows API'et
  • Det er nødvendigt at inkludere windows.h-biblioteket for at have adgang til en lang række funktioner, herunder manipulering af konsolegenskaber.

GetStdHandle-funktion

GetStdHandle er en Windows API-funktion, der bruges til at hente et håndtag til den angivne standardenhed (standardinput, standardoutput eller standardfejl). Den henter et håndtag til den aktive konsolskærmbuffer, hvilket giver os mulighed for at udføre forskellige handlinger som at indstille konsollens markørsynlighed, farver og mere.

SetConsoleCursorInfo funktion

Efter at have fået markøren info med GetConsoleCursorInfo, sætter vi egenskaben 'bVisible' til den ønskede værdi. Til sidst ringer vi SetConsoleCursorInfo at anvende vores ændringer, effektivt skjule eller vise konsolmarkøren.

Som konklusion er det en ligetil proces at manipulere GUI-elementer som markører ved hjælp af C++ og Windows API. Når du først forstår de grundlæggende funktioner og deres funktionaliteter, åbner det døre til mange andre muligheder. Så vær ikke bange for at eksperimentere og tilføje disse nyttige tricks til dit udviklerværktøj.

Relaterede indlæg: