程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C,C++,使得控制台的黑框框全屏顯示,框框全屏顯示

C,C++,使得控制台的黑框框全屏顯示,框框全屏顯示

編輯:關於C語言

C,C++,使得控制台的黑框框全屏顯示,框框全屏顯示


    

    有時候C,C++運行的結果有比較多的數據,或者大一新生要做個學生管理系統界面時,運行C,C++出來的黑框框控制台,是不是覺得很小?下面是一個全屏的函數,只要在主函數中第一行調用它,就可以了。然後其他基本不影響。(該函數只要吧windows.h包含進來即可)

 1 void FullScreen(){ 
 2     HWND hwnd=GetForegroundWindow();
 3     int x=GetSystemMetrics(SM_CXSCREEN)+300;
 4     int y=GetSystemMetrics(SM_CYSCREEN)+300;
 5     char setting[30];
 6     sprintf(setting,"mode con:cols=%d lines=%d",x,y);
 7     system(setting); 
 8    SetWindowPos(hwnd,HWND_TOPMOST,0,0,x+300,y+300,NULL);
 9     MoveWindow(hwnd,-10,-40,x+300,y+300,1);
10     printf("\n\n");
11 }

下面簡單講解一下上面的函數一些基本參數,當然這裡你可以忽略掉,直接用上面的函數即可。

1)GetForegroundWindow(),該函數獲得當前工作的窗口的句柄,這裡是控制台。 

2)GetSystemMetris 函數只有一個參數,其中參數SM_CXSCREEN是獲得屏幕寬度

3)大家應該知道 system("mode con:cols=x lines=y"); 這條語句可以設置控制台的大小。但是system內是字符串變量,事先不知道屏幕的大小,所以需要借助一個輔助字符數組setting來傳遞參數。

又用到了int sprintf( char *buffer, const char *format, [ argument] … );函數返回值是字符串的長度,把字符串傳給buffer.

4)剩下的SetWindowPos和MoveWindow就自己百度看書了解了。

 

2015-12-06

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved