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

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、純C語(yǔ)言實(shí)現(xiàn)圖形界面登陸窗口 編程工具是: 請(qǐng)根據(jù)個(gè)人需要對(duì)源代碼進(jìn)行修改使用,圖片放在工程文件夾中。新 建時(shí)應(yīng)該將文件后綴設(shè)置為.cpp 以下是程序燈源代碼: #include 是 界 圖 面 下 #include #include #include #include #include #defineLEN_A20/賬戶長(zhǎng)度 #defineLEN_P10/密碼長(zhǎng)度 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;聲明一個(gè)IMAGED量 IMAGEImg2(640,480);/聲明一個(gè)IMAG豉量 charinput1LEN_A;/用于接收輸入的字符串charinput2LEN_P;/用于接收輸入的字符串intj; InputAPwordaccount; 10adim

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

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

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

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

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

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

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

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

溫馨提示

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

評(píng)論

0/150

提交評(píng)論