全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:835
推到 Plurk!
推到 Facebook!

關於 _getch()

答題得分者是:supman
hdilwy
初階會員


發表:18
回覆:65
積分:41
註冊:2004-08-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-15 23:39:34 IP:219.68.xxx.xxx 未訂閱
在console下 如果用_getch()的話你所打的字元並不會顯示 但是如果我是要輸入一整行 但是也是要不顯示你所輸入的字 有沒有類似的涵式是做這種事情的 因為一次只抓一個字元對於執行效率來說有點慢
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-16 00:03:34 IP:203.204.xxx.xxx 未訂閱
應該沒這種函數,自己弄一個 char s[81]; int ch; int i; for (i=0;i<80 && (ch=Getch())!='\n';i ) s[i]=ch;
arisaka_matsuri
高階會員


發表:25
回覆:205
積分:231
註冊:2003-10-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-16 00:05:59 IP:218.166.xxx.xxx 未訂閱
哈哈哈~這讓我想起以前玩textcolor的日子... 那時為了寫個輸入密碼的東東,也是苦惱很久,後來發現書上有提到用textcolor把輸入的文字「隱形」。可以試試看,隱形後用scanf一樣可以達到你的需求,用完再讓文字恢復正常吧~
hdilwy
初階會員


發表:18
回覆:65
積分:41
註冊:2004-08-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-04-17 14:27:19 IP:219.68.xxx.xxx 未訂閱
引言: 哈哈哈~這讓我想起以前玩textcolor的日子... 那時為了寫個輸入密碼的東東,也是苦惱很久,後來發現書上有提到用textcolor把輸入的文字「隱形」。可以試試看,隱形後用scanf一樣可以達到你的需求,用完再讓文字恢復正常吧~
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-04-17 18:14:54 IP:203.204.xxx.xxx 未訂閱
如果想用Scnaf的話,假設背景為黑色,先把字型設為黑色,這樣使用者在打的時候就看不見了,打完後再將字型顏色改回來. BCB是用SetConsoleTextAttribute,如果用Turbo C 或Borland C 則用SetColor. 玩玩看吧~ char s[10]; SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0); scanf("%s",s); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),15); printf("%s",s); getch();
arisaka_matsuri
高階會員


發表:25
回覆:205
積分:231
註冊:2003-10-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-04-17 22:29:45 IP:220.135.xxx.xxx 未訂閱
dear hdilwy: 用textcolor設定顏色,需要配合cprintf輸出、cscanf輸入才有效  
#include 
#include 
#include 
int main(int argc, char* argv[])
{
  char str[128];
  cprintf("輸入字串:\r\n");
  textcolor(0); // 設成黑色(同背景)
  cscanf("%s", str);
  textcolor(7); // 回復預設的前景色
  cprintf("\r\n%s\r\n", str);      system("PAUSE");      return 0;
} 
cprintf不會將\n解釋成\r\n,所以要自己補上才會有換行且游標回到行頭的效果。 BTW,setcolor是用在graphic模式下。純文字模式下(console),設定文字顯示的函數比較詳細的還可以參考textattr。
hdilwy
初階會員


發表:18
回覆:65
積分:41
註冊:2004-08-31

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-04-18 10:23:25 IP:220.130.xxx.xxx 未訂閱
arisaka_matsuri 大大: 謝謝您的指教 可是分數只能給一個人 我給了supman 希望你別介意唷
系統時間:2024-05-19 17:22:03
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!