我有一个简单的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 :(得分:4)
将以下功能添加到您的程序
#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
中阅读更多内容答案 1 :(得分:4)
答案 2 :(得分:0)
Drive driveService = new Drive.Builder(new NetHttpTransport(), JacksonFactory.getDefaultInstance(), credential)
.setApplicationName(APPLICATION_NAME)
.build();
String pageToken = null;
do {
FileList files = driveService.files().list()
.setFields("nextPageToken, files(id, name, parents)")
.setSpaces("drive")
.setPageToken(pageToken)
.execute();
String drivefile = "";
System.out.println("file ::: " + driveService.files().list().execute());
for (File file : files.getFiles()) {
drivefile = file.getName() + "," + drivefile;
}
这应该有效!它取自ANSI代码表,其中的字符不只是所看到的。它们的行为就像某种形式的命令。
答案 3 :(得分:-1)
这里有一个适用于 Windows 和 Linux 的解决方案:
#include <iostream>
#ifdef _WIN32
#define WIN32_LEAN_AND_MEAN
#define VC_EXTRALEAN
#include <Windows.h>
#endif // _WIN32
using namespace std;
void show_console_cursor(const bool show) {
#if defined(_WIN32)
static const HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO cci;
GetConsoleCursorInfo(handle, &cci);
cci.bVisible = show; // show/hide cursor
SetConsoleCursorInfo(handle, &cci);
#elif defined(__linux__)
cout << (show ? "\033[?25h" : "\033[?25l"); // show/hide cursor
#endif // Windows/Linux
}