⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ld_face.cpp

📁 设计模式:工厂模式、单例模式的基本实现
💻 CPP
📖 第 1 页 / 共 3 页
字号:
#include <string>
#include <iostream>
#include <windows.h>
#include <conio.h>

#include "LD_SysHead.h"
#include "LD_Face.h"
#include "LD_Control.h"
#include "LD_Ex_Add.h"
#include "LD_EX_Look.h"
#include "LD_EX_Change.h"
#include "LD_Ctr_Register.h"
#include "LD_FileR.h"

using namespace std;
	LD_Control Test;

void ShiTi_main(void);
/************************************************************************/
/*    公共界面头界面		作者:王贵平                                    */
/************************************************************************/

void LD_Face::LD_FC_Local(string _name)
{
	cout << "☆□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□☆" << '\t'<<'\n' << endl;
	cout << "\t\t\t\t"<<_name<<'\t'<< endl;
	cout <<""<<'\t'<<endl;
	cout << "☆□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□☆" << '\t'<<'\n' << endl;
}
/************************************************************************/
/*    登陆界面		作者:张恒山                                    */
/************************************************************************/
void LD_Face::LD_FC_Login(void)
{
	char sUserName[10]="";
	char szPassWord[7]="";
	int j;
	int nNum=0;
	struct dd 
	{
		int aa;
	};
//	h
	for(j=1; j<4; )
	{
		cout<<endl;
		cout<<"★□■□■□■□■□■□■□■ □■□■□■□■□■□■□□■□■□□■□■□★\n";
		cout<<"□                                                                           □\n";
		cout<<"■        ═  ═  ═  ═                ═  ═  ═  ═           ■\n";
		cout<<"□      ╭╧╮╭╧╮╭╧╮╭╧╮            ╭╧╮╭╧╮╭╧╮╭╧╮         □\n";
		cout<<"■      ║乐║║成║║数│║字║            ║通║║信║║学│║院║         ■\n";
		cout<<"□      ╘∞╛╘∞╛╘∞╛╘∞╛            ╘∞╛╘∞╛╘∞╛╘∞╛         □\n";
		cout<<"■                                                                           ■\n";
		cout<<"□                          L  A  N  D  I  N  G                              □\n";
		cout<<"■                                                                           ■\n";
		cout<<"□                                                                           □\n"; 
		cout<<"■                                WELCOME!                                   ■\n";
		cout<<"□                                                                           □\n";                                      
		cout<<"★□■□■□■□■□■□■□■ □■□■□■□■□■□■□□■□■□□■□■□★\n\n";
		if (nNum==1)
		{			
			cout<<"用户名或密码不正确,请重新输入,(请注意:您只有三次输入的机会!)您还有"<<(4-j)<<"次机会"<<endl;
		}
		cout<<"\t  [用户名]:                                                  \n"; 
		cout<<"                                                                           \n";
		cout<<"\t[用户密码]:                                                 \n"; 	
		COORD co;
		co.X = 20;
		co.Y = 15+nNum;
		SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),   co); 
		char Tmp;
		for(int i=0; i<10; i++)
		{
			Tmp=getch();
			if (Tmp==8)
			{
				i-=1;			
				if(Tmp==8&&i>=0)
				{
					cout<<Tmp;
					cout<<" ";
					cout<<Tmp;
					sUserName[i]='\0';
					i-=1;		
					continue;
				}
			}
			else if(Tmp==13)
			{
				break;
			}
			else if(Tmp!=8) 
			{
				sUserName[i]=Tmp;
				cout<<sUserName[i];
			}
		}
		co.Y = 17+nNum;
		SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),   co); 	
		for(i=0; i<7; i++)
		{
			char mm=getch();
			if (mm==8)
			{
				i-=1;
				if(mm==8&&i>=0)
				{
					cout<<"\b\b";
					cout<<"  ";
					cout<<"\b\b";
					i-=1;		
				}
			}
			else if(i<6)
			{
				szPassWord[i]=mm;
				cout<<"* ";
			}
		}

		cout<<sUserName<<'\t'<<szPassWord<<endl;
		getch();
		if (strcmp(sUserName,"admin")==0&&strcmp(szPassWord,"123456")==0)
		{
			j++;
			system("cls");
			nNum=0;	
			LD_FC_Expland();
			break;		
		}
		else
		{
			j++;
			if (j==4)
			{
				exit(0);
			}
			nNum=1;
			system("cls");			
		}			
	}
}
/************************************************************************/
/*    欢迎界面		作者:王贵平                                    */
/************************************************************************/
void LD_Face::LD_FC_Welcome()
{
	cout<<" L   D   C   I                           ★☆ 考试系统之后台管理系统 ☆★ ";	
	cout<<"\n";
	cout<<"         ═  ═  ═  ═                ═  ═  ═  ═            \n";
    cout<<"       ╭╧╮╭╧╮╭╧╮╭╧╮            ╭╧╮╭╧╮╭╧╮╭╧╮         \n";
    cout<<"       ║乐║║成║║数│║字║            ║通║║信║║学│║院║         \n";
    cout<<"       ╘∞╛╘∞╛╘∞╛╘∞╛            ╘∞╛╘∞╛╘∞╛╘∞╛         \n\n";
	cout<<"                ╭╮  ╭☆╭——╮╭╮      ╭╮      ╭———╮\n";
    cout<<"                ││  │││╭—★││      ││      ★╭—╮│\n";
    cout<<"                │╰—╯││╰╮  ││      ││      ││││  \n";
    cout<<"                │╭—╮││╭╯  ││      ││      ││╰╯  \n";
    cout<<"                ││  │││╰—╮│╰——╮│╰——╮│╰—╯★\n";
    cout<<"                ╰★  ╰╯╰——╯☆———╯★———╯╰———☆\n\n"; 
	cout<<"                                【中文版】"<<endl;
	Sleep(1000);
	system("cls");
}
/************************************************************************/
/*    说明界面		作者:张恒山                                    */
/************************************************************************/
void LD_Face::LD_FC_Expland()
{
	void KaoSmain();
	cout<<"★□■□■□■□■□■□■□■ □■□■□■□■□■□■□□■□■□□■□■□★\n";
	cout<<"■        ═  ═  ═  ═                ═  ═  ═  ═           ■\n";
    cout<<"□      ╭╧╮╭╧╮╭╧╮╭╧╮            ╭╧╮╭╧╮╭╧╮╭╧╮         □\n";
    cout<<"■      ║乐║║成║║数│║字║            ║通║║信║║学│║院║         ■\n";
    cout<<"□      ╘∞╛╘∞╛╘∞╛╘∞╛            ╘∞╛╘∞╛╘∞╛╘∞╛         □\n";
	cout<<"□                              使 用 说 明                                  □\n";
	cout<<"■   1. 试题管理系统:                                                        ■\n";
    cout<<"□        ★ 录入试题  每十道题自动生成一套试卷,每套试卷分值为100分。       □\n";
	cout<<"■        ★ 预览  方便您对已保存的试题进行查看。                            ■\n";
    cout<<"■        ★ 修改  通过修改功能您可以对不满意的试题进行修改。                ■\n";
    cout<<"■        ★ 删除  您可以删除单道题或者一套试卷。                            ■\n";
	cout<<"■                                                                           ■\n";
	cout<<"■   2. 考生注册管理系统:                                                    ■\n";
	cout<<"■        ★ 注册  考生注册的用户名必须唯一,否则系统会自动分配用户名。      ■\n";
	cout<<"■        ★ 查询  您可以方便的查看考生基本信息。                            ■\n";
	cout<<"■        ★ 修改  修改考生密码等信息。                                      ■\n";
	cout<<"■        ★ 删除  对于已考过的考生信息可以进行删除。                        ■\n";
	cout<<"■                                                                           ■\n";
	cout<<"□                  【1.试题管理】        【2.考生注册管理】                 □\n"; 
	cout<<"□                                                                           □\n";
    cout<<"★□■□■□■□■□■□■□■ □■□■□■□■□■□■□□■□■□□■□■□★\n";
	
	cout<<"请选择: '1' 进入试题管理系统、'2' 进入考生注册管理系统, 按'Esc'退出! :\n "<<endl<<endl;                                            
	
	char chA = '0';
	while(chA!='1'&&chA!='2'&&chA!=27)
	{
		chA = getch();
	}
	LD_Control con;
	LD_File *fil=NULL;;
	LD_File *noceSpace=con.LD_CTR_ReadExam(1,fil);
	switch(chA)
	{
	case '1':
		ShiTi_main();
		break;
	case '2':
		KaoSmain();
		break;
	default:
		break;		
	}
}
/************************************************************************/
/* 删除界面    
	1.代表删除试题
	2.代表删除套题                                                       */
/************************************************************************/
void LD_Face::LD_FC_ExamDelete(LD_File *_noceSpace,int _judgeN)
{
	system("cls");
	LD_File *poitA=_noceSpace;
	if (_judgeN==1)
	{
		string topName="删除试题";
		LD_FC_Local(topName);
		cout<<"\t\t\t您确认要删除该试题吗?(Y/N)\n"<<endl;	
		cout<<"◆Y-YES 删除该试题(注意:该操作会导致此卷缺少一题,请确认随后立即补录一题)。。\n"<<endl;	
		cout<<"◆N-NO 取消删除操作,并返回浏览界面。\n"<<endl;
		cout<<"Y\n\n";
	}else if(_judgeN==2)
	{
		string topName = "删除套题";
		LD_FC_Local(topName);
		cout<<"\t\t\t您确认要删除该套试卷吗?(Y/N)\n"<<endl;	
		cout<<"◆Y-YES 删除该试卷(注意:该操作会导致此卷永久删除)。\n"<<endl;	
		cout<<"◆N-NO 取消删除操作,并返回浏览界面。\n"<<endl;
	//	cout<<"Y\n\n";
	}	
	int judgeNum=0;
	char judgeWord=getch();
	if (judgeWord=='y'||judgeWord=='Y')
	{
		LD_EX_Delete *del=new LD_EX_Delete();
		if (_judgeN==1)
		{
			judgeNum=LD_FC_ExamDelAdd(poitA);
		}else if(_judgeN==2)
		{
			judgeNum=del->LD_DEL_All(poitA);
		}		
		if (judgeNum==1)
		{
			cout<<"◆删除成功"<<endl;
			cout<<"◆(按任意键返回)";
			getch();
		}else
		{
			cout<<"◆删除失败"<<endl;
			cout<<"◆(按任意键返回)";
			getch();		 	
		}
	}
}
/************************************************************************/
/* 试题补录界面                                                     */
/************************************************************************/
int LD_Face::LD_FC_ExamDelAdd(LD_File *_noceSpace)
{
	string topName="试题补录";
	LD_FC_Local(topName);
	string chTemp="";
	string arrChTem[7]={""};
	int nTemp=0;
	while (1)
	{
		cout<<">>输入题干  :";
		cin>>chTemp;
		_noceSpace->setFL_TiGan(chTemp);
		chTemp="\0";
		for (int i=0;i<7;i++)
		{
			cout<<">>输入选项 "<<(char)(i+49);
			cin>>chTemp;
			if(chTemp.length()==0)
			{
				break;
			}else
			{
				arrChTem[i]=chTemp;
				chTemp="\0";
			}
		}
		cout<<">>输入答案:";
		cin>>chTemp;
		_noceSpace->setFL_DaAn(chTemp);
		cout<<"\t1 重新输入\tESC 返回浏览界面"<<endl;
		char judCh='\0';
		while (judCh!=27&&judCh!='1')	//只有输入1或者ESC才回有反应
		{
			judCh=getch();
			putch(judCh);
		}
		if (judCh==27)
		{
			break;	
		}
	}
	return 1;

}
char LD_Face::LD_FC_ExamManage(void)
{
	char chIn = 0;
	system("cls");
	cout << "☆□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□☆" << '\t'<<'\n' << endl;
	cout << "\t\t\t\t" << "试题管理" << '\t'<< endl;
	cout << "" << '\t' << endl;
	cout << "☆□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□☆" << '\t'<<'\n' << endl;
	cout << "\t\t\t\t" << endl;
	cout << "\t\t\t\t" << endl;
	cout << "\t\t\t\t" << endl;
	cout << "\t\t\t\t1 -> 录入试题" << "\t\t\n" << endl;
	cout << "\t\t\t\t2 -> 浏览修改试卷" << "\t\t\n" << endl;
	cout << "\t\t\t\tESC -> 返回" << "\t\t\n" << endl;
	cout << "\t\t\t\t" << endl;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -