C語言實現(xiàn)圖形界面登陸窗口_第1頁
C語言實現(xiàn)圖形界面登陸窗口_第2頁
C語言實現(xiàn)圖形界面登陸窗口_第3頁
C語言實現(xiàn)圖形界面登陸窗口_第4頁
C語言實現(xiàn)圖形界面登陸窗口_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、純C語言實現(xiàn)圖形界面登陸窗口 編程工具是: 請根據(jù)個人需要對源代碼進行修改使用,圖片放在工程文件夾中。新 建時應該將文件后綴設置為.cpp 以下是程序燈源代碼: #include 是 界 圖 面 下 #include #include #include #include #include #defineLEN_A20/賬戶長度 #defineLEN_P10/密碼長度 typedefstructAccount ( charname20; longintpassword; InAccount; typedefstructinputAPword ( InAccountaccount; intflag

2、; InputAPword; voidinputbox(void); voidcursor(void); voidcursor2(void); voidname(void); intMouseEvent(IMAGE); InputAPwordmenu2(void) initgraph(640,480);/初始化圖形界面 IMAGEImg1;聲明一個IMAGED量 IMAGEImg2(640,480);/聲明一個IMAG豉量 charinput1LEN_A;/用于接收輸入的字符串charinput2LEN_P;/用于接收輸入的字符串intj; InputAPwordaccount; 10adim

3、age(&Img1,_T();加載圖片 SetWorkingImage(&Img1);/設置當前繪圖設備為Img1 set1inesty1e(PS_SOLID,NULL,2);/設置線的樣式 setfont(64,0,華文隸書);/設置字體的樣式和大小 settextc010r(RGB(134,0,255);設置字體的顏色 setlinec010r(RGB(16,16,16);設置線的顏色 setbkmode(TRANSPARENT);般置字體的背景為透明 0uttextxy(50,50,_T(A用戶登錄);/顯示漢字 settextc010r(RGB(0,0,0);/設置字體的顏色 rect

4、ang1e(50,150,350,340);/畫矩形框 rectang1e(254,515,302,585);/畫一個矩形框 fi11rectang1e(100,280,173,315);/登錄框 fi11rectang1e(223,280,296,315);/取消框 SetW0rkingImage();/恢復當前繪圖設備為默認設備 putimage(0,0,&Img1);/顯示圖片 do name();/顯示文字信息 setbkmode(OPAQUE);/設置字體背景為默認 setbkc010r(RGB(255,255,255); cursor();/顯示輸入框以及閃爍的光標 for(j=0

5、;LEN_A;j+)限制輸入,最多允許輸入LNE位數(shù)據(jù) input1j=getch();/讀取鍵盤輸入的字符并存入數(shù)組 outtextxy(161+8*j,193,input1j);將字符顯示在圖 片上 if(input1j=8)/按刪除鍵時的操作 input1j-1=0;/字符數(shù)組內容刪除一位 outtextxy(161+8*j,193,);/將字符遮掩 outtextxy(161+8*(j-1),193,);/將字符遮掩 j-=2;/數(shù)組坐標后退兩個 if(j=-1)/當回退到頭時的處理 input10=0;/對數(shù)組進行標記 break;/退出本次輸入 ) continue; elseif

6、(input1j=13)/按回車鍵時的處理 input1j=0;/將數(shù)組的最后一個數(shù)據(jù)標記為0 if(j=0)/無任何輸入,且按下回車時的處理 outtextxy(161+8*j,193,);/將回車顯示的字 符遮掩 outtextxy(161+8*(j-1),193,);/將回車顯示 的字符遮掩 input10=0;/對數(shù)組進行進行標記 break;/退出本次輸入 setbkmode(OPAQUE);/設置字體背景為默認 setbkc010r(RGB(255,255,255); cursor2();/光標聚到下一個輸入框的開始位置 for(j=0;jLEN_P;j+)/密碼輸入 input2

7、j=getch();/獲取從鍵盤輸入的字符 outtextxy(161+8*j,234,*);/以*號顯示,起到遮掩密 碼的作用 if(input2j=8)/按下刪除鍵時的處理 input2j-1=0;/對數(shù)組進行處理 outtextxy(161+8*j,234,);/對需要進行刪除處理 的字符進行遮掩 outtextxy(161+8*(j-1),234,_T();/對需要刪除 進行處理的字符進行遮掩 j-=2;/對數(shù)組進行處理 if(j=-1)/當刪除到頭時進行的操作 input20=0;/對數(shù)組進行標記 break;/退出本次輸入 continue; elseif(input2j=13)/

8、按下回車時的操作 outtextxy(161+8*j,234,); input2j=0;/將數(shù)組的最后一位標記為0 if(j=0)/無任何操作,直接進行回車輸入時的操作 outtextxy(161+8*j,234,);/對輸入回車時產(chǎn) 生的字符進行遮掩 outtextxy(161+8*(j-1),234,_T();/對輸入 回車時產(chǎn)生的字符進行遮掩 input20=0;/對數(shù)組進行標記 break;/結束本次輸入 getimage(&Img2,0,0,640,480);/保存當前顯示的界面 while(input10=0)&(input20=0);/ 或第二個框有一個未輸入時則繼續(xù)循環(huán)輸入 s

9、witch(MouseEvent(Img2) case 1: =1; strcpy將輸入的字符存入結構體 將輸入的密碼存入結構體 break; case 2: =2; returnaccount; closegraph(); 當?shù)谝粋€ ) voidname(void)/顯示文字信息函數(shù) ( setfont(25,0,宋體)設置字體的大小和樣式 setbkmode(TRANSPARENT); settextc010r(RGB(0,0,0); outtextxy(90,190,_T(賬號);/顯示漢字 outtextxy(90,233,_T(密碼); outtextxy(111,285,_T(登錄

10、); outtextxy(234,285,_T(取消); setfont(18,0,宋體) /setbkmode(OPAQUE);/設置字體背景為默認 ) voidcursor(void)/閃爍光標的作用 while(1)/如果鍵盤沒有進行輸入這循環(huán)閃爍 inputbox(); if(kbhit()/當鍵盤有反應時kbhit()會返回一個非零值 break;/退出閃爍 ) Sleep(300);/延時 setlinestyle(PS_SOLID,NULL,2);/設置線的樣式為 PS_SOLID寬度為2 line(161,194,162,210);/光標的描繪 Sleep(300);/延時 ) ) voidcursor2(void)第二個光標 do Sleep(30);/延時 setlinestyle(PS_SOLID,NULL,2);/設置字體樣式 line(162,234,163,251);/光標的描繪 Sleep(30);/延時 while(!kbhit();/當鍵盤有反應時kbhit()會返回一個非零值 voidinputbox(void)/描繪兩個輸入框 inti; for(i=0;i=100&=280&=223&=280&=100&=280&=223&=280&=315)/取 消按鍵范圍 va

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論