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

📄 frmquestion.cs

📁 本论文叙述了联机考试系统的现状以及C#语言的概况。重点介绍了联机考试系统的实现过程:包括系统分析、 系统调查、 数据流程分析、功能设计、 数据库设计、 系统物理配置方案、 系统实现、 系统测试和调试。
💻 CS
📖 第 1 页 / 共 2 页
字号:
			this.radOptionA.Text = "A.";
			this.radOptionA.CheckedChanged += new System.EventHandler(this.radOptionA_CheckedChanged);
			// 
			// txtOptionA
			// 
			this.txtOptionA.BackColor = System.Drawing.SystemColors.Info;
			this.txtOptionA.Font = new System.Drawing.Font("Times New Roman", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.txtOptionA.Location = new System.Drawing.Point(317, 284);
			this.txtOptionA.Name = "txtOptionA";
			this.txtOptionA.ReadOnly = true;
			this.txtOptionA.Size = new System.Drawing.Size(163, 20);
			this.txtOptionA.TabIndex = 45;
			this.txtOptionA.Text = "";
			// 
			// txtOptionB
			// 
			this.txtOptionB.BackColor = System.Drawing.SystemColors.Info;
			this.txtOptionB.Font = new System.Drawing.Font("Times New Roman", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.txtOptionB.Location = new System.Drawing.Point(317, 319);
			this.txtOptionB.Name = "txtOptionB";
			this.txtOptionB.ReadOnly = true;
			this.txtOptionB.Size = new System.Drawing.Size(163, 20);
			this.txtOptionB.TabIndex = 46;
			this.txtOptionB.Text = "";
			// 
			// txtOptionC
			// 
			this.txtOptionC.BackColor = System.Drawing.SystemColors.Info;
			this.txtOptionC.Font = new System.Drawing.Font("Times New Roman", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.txtOptionC.Location = new System.Drawing.Point(317, 353);
			this.txtOptionC.Name = "txtOptionC";
			this.txtOptionC.ReadOnly = true;
			this.txtOptionC.Size = new System.Drawing.Size(163, 20);
			this.txtOptionC.TabIndex = 47;
			this.txtOptionC.Text = "";
			// 
			// txtOptionD
			// 
			this.txtOptionD.BackColor = System.Drawing.SystemColors.Info;
			this.txtOptionD.Font = new System.Drawing.Font("Times New Roman", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.txtOptionD.Location = new System.Drawing.Point(317, 388);
			this.txtOptionD.Name = "txtOptionD";
			this.txtOptionD.ReadOnly = true;
			this.txtOptionD.Size = new System.Drawing.Size(163, 20);
			this.txtOptionD.TabIndex = 48;
			this.txtOptionD.Text = "";
			// 
			// grpQuestionDetails
			// 
			this.grpQuestionDetails.BackColor = System.Drawing.Color.Transparent;
			this.grpQuestionDetails.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.grpQuestionDetails.Font = new System.Drawing.Font("Century Gothic", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.grpQuestionDetails.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
			this.grpQuestionDetails.Location = new System.Drawing.Point(125, 181);
			this.grpQuestionDetails.Name = "grpQuestionDetails";
			this.grpQuestionDetails.Size = new System.Drawing.Size(528, 241);
			this.grpQuestionDetails.TabIndex = 49;
			this.grpQuestionDetails.TabStop = false;
			this.grpQuestionDetails.Text = "试题详细信息";
			// 
			// btnNewSave
			// 
			this.btnNewSave.BackColor = System.Drawing.Color.Transparent;
			this.btnNewSave.Enabled = false;
			this.btnNewSave.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.btnNewSave.Font = new System.Drawing.Font("Verdana", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.btnNewSave.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
			this.btnNewSave.Location = new System.Drawing.Point(125, 431);
			this.btnNewSave.Name = "btnNewSave";
			this.btnNewSave.Size = new System.Drawing.Size(96, 26);
			this.btnNewSave.TabIndex = 50;
			this.btnNewSave.Text = "新建(&N)";
			this.btnNewSave.Click += new System.EventHandler(this.btnNewSave_Click);
			// 
			// btnCancel
			// 
			this.btnCancel.BackColor = System.Drawing.Color.Transparent;
			this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.btnCancel.Font = new System.Drawing.Font("Verdana", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.btnCancel.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
			this.btnCancel.Location = new System.Drawing.Point(557, 431);
			this.btnCancel.Name = "btnCancel";
			this.btnCancel.Size = new System.Drawing.Size(96, 26);
			this.btnCancel.TabIndex = 53;
			this.btnCancel.Text = "取消(&C)";
			this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
			// 
			// btnHelp
			// 
			this.btnHelp.BackColor = System.Drawing.Color.Transparent;
			this.btnHelp.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.btnHelp.Font = new System.Drawing.Font("Verdana", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
			this.btnHelp.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
			this.btnHelp.Location = new System.Drawing.Point(696, 43);
			this.btnHelp.Name = "btnHelp";
			this.btnHelp.Size = new System.Drawing.Size(72, 26);
			this.btnHelp.TabIndex = 56;
			this.btnHelp.Text = "帮助(&H)";
			this.btnHelp.Click += new System.EventHandler(this.btnHelp_Click);
			// 
			// frmQuestion
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
			this.BackColor = System.Drawing.SystemColors.ControlLight;
			this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));
			this.ClientSize = new System.Drawing.Size(783, 520);
			this.Controls.Add(this.btnHelp);
			this.Controls.Add(this.btnCancel);
			this.Controls.Add(this.btnNewSave);
			this.Controls.Add(this.txtOptionD);
			this.Controls.Add(this.txtOptionC);
			this.Controls.Add(this.txtOptionB);
			this.Controls.Add(this.txtOptionA);
			this.Controls.Add(this.lblQuestion);
			this.Controls.Add(this.txtQuestion);
			this.Controls.Add(this.txtQuestionNo);
			this.Controls.Add(this.lblExamTitle);
			this.Controls.Add(this.lblSubject);
			this.Controls.Add(this.lblCreateUser);
			this.Controls.Add(this.radOptionD);
			this.Controls.Add(this.radOptionC);
			this.Controls.Add(this.radOptionB);
			this.Controls.Add(this.radOptionA);
			this.Controls.Add(this.cboSubject);
			this.Controls.Add(this.grpQuestionDetails);
			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
			this.Location = new System.Drawing.Point(146, 115);
			this.Name = "frmQuestion";
			this.ShowInTaskbar = false;
			this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
			this.Text = "frmQuestion";
			this.ResumeLayout(false);

		}
		#endregion

		private void btnCancel_Click(object sender, System.EventArgs e)
		{

			this.Close();
			if(btnNewSave.Text.Equals("确认(&O)"))
			{
				objQSearch.Show();
			}
		}

		//修改情况:部门:ACCP产品开发培训部   修改人:王文  时间:2004-12-25
		private void btnNewSave_Click(object sender, System.EventArgs e)
		{
			index++;//create connection
			
			//除去DataAccess objDA = DataAccess.GetInstance();
				
			
			//create table 
			if (index==1)
			{
				CreateTable();
				frmQuestion.dtUpdate =dtQuestion.Clone();
			}
				
			//create row
			drQuestion  = null; //所添加的CODES
			drQuestion  = frmQuestion.dtUpdate.NewRow();

				
			//create Question object

			Question objQ = new Question();
			
			if(btnNewSave.Text.Equals("新建(&N)"))
			{
				btnNewSave.Text="保存(&S)";
				
				ans = objQ.GenerateQuestionNo(cboSubject.Text);
				
				txtQuestionNo.Text= ans.ToString();
				
				txtQuestion.ReadOnly=false;
				txtOptionA.ReadOnly =false;
				txtOptionB.ReadOnly =false;
				txtOptionC.ReadOnly =false;
				txtOptionD.ReadOnly =false;
			}
			else if(btnNewSave.Text.Equals("保存(&S)") || btnNewSave.Text.Equals("确认(&O)"))
			{
					//temporary assign 0 to QNumber
					drQuestion ["QNumber"] = questno;

					drQuestion ["SubjectCode"] = this.cboSubject.Text;
					drQuestion ["QuestNo"]  = this.txtQuestionNo.Text;
					drQuestion ["Question"] = this.txtQuestion.Text;
					drQuestion ["OptionA"] = this.txtOptionA.Text;
					drQuestion ["OptionB"] = this.txtOptionB.Text;
					drQuestion ["OptionC"] = this.txtOptionC.Text;  
					drQuestion ["OptionD"] = this.txtOptionD.Text;  
					drQuestion ["CorrectAns"] = this.corrAns;  
								
					//create Question object to invoke InsertQuestion
				if(btnNewSave.Text.Equals("保存(&S)"))
				{
					if (!validateQuestion()) return; //所添加的CODES
					
					drQuestion ["CorrectAns"] = this.corrAns;  
					objQ.InsertQuestion(drQuestion);
						
					dtUpdate.Clear(); //所添加的CODES,静态变量dtUpdate在这里要被清空,
					//因为数据已经被保存在数据库中,不需要再缓存数据。
						
					MessageBox.Show ("试题添加成功");
					
					//除去this.corrAns="";
					this.corrAns=null;//所添加的CODES
									
					this.btnNewSave.Text="新建(&N)"; 
					
					txtQuestion.ReadOnly=true;
					txtOptionA.ReadOnly=true;
					txtOptionB.ReadOnly=true;
					txtOptionC.ReadOnly=true;
					txtOptionD.ReadOnly=true;

					txtQuestion.Text="";
					txtOptionA.Text="";
					txtOptionB.Text="";
					txtOptionC.Text="";
					txtOptionD.Text="";
					txtQuestionNo.Text="";
					radOptionA.Checked=false;
					radOptionB.Checked=false;
					radOptionC.Checked=false;
					radOptionD.Checked=false;
				}
				else if(btnNewSave.Text.Equals("确认(&O)"))
				{
					//code to add datarow
					frmQuestionSearch.updateflag =true;
					
					//添加的代码code,判断同一的纪录是否曾经被缓存在dtUpdate中
					bool isexit = false;
					for (int i = 0; i < dtUpdate.Rows.Count; ++i)
					{
						DataRow dr = dtUpdate.Rows[i];
						if ((int)dr[0] == questno)
						{
							dr.ItemArray = drQuestion.ItemArray;
							isexit = true;
							break;
						}
					}
	
					if (!isexit)
						dtUpdate.Rows.Add(drQuestion); 	
					//以上所添加的CODES					

					this.Hide();

					//添加的代码codes
					this.Close();
					this.Dispose();					
				
				
					DataTable questionTbl = objQSearch.dtQuestion;
					for (int i = 0; i < questionTbl.Rows.Count; ++i)
					{
						DataRow dr = questionTbl.Rows[i];
						if ((int)dr[0] == questno)
						{
							dr.ItemArray = drQuestion.ItemArray;
							break;
						}
					}
					//以上所添加的CODES

					objQSearch.btnSave.Enabled = true;
					objQSearch.Show();
							
				}
			}
}
	

		//修改情况:部门:ACCP产品开发培训部   修改人:王文  时间:2004-12-26
		//所添加的CODES
		bool validateQuestion()
		{
			if (!validTextBox(txtQuestion,"问题的内容不能空"))  {return false;}
			if (!validTextBox(txtOptionA,"A答案选项内容不能空")){return false;}
			if (!validTextBox(txtOptionB,"B答案选项内容不能空")){return false;}
			if (!validTextBox(txtOptionC,"C答案选项内容不能空")){return false;}
			if (!validTextBox(txtOptionD,"D答案选项内容不能空")){return false;}
			
			if (corrAns == null)
			{
				MessageBox.Show("请选择一个正确答案选项");
				return false;
			}
			return true;
		}

		bool validTextBox(TextBox tb, string errMsg )
		{
			if (tb.Text.Trim() == string.Empty)
			{
				MessageBox.Show(errMsg);
				tb.Focus();
				return false;
			}
			return true;
		}

		//以上所添加的CODES



		private void cboSubject_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			this.txtQuestionNo.Text="";
			this.txtQuestionNo.ReadOnly=true;
			btnNewSave.Text="新建(&N)";
			btnNewSave.Enabled=true;
		}

		//修改情况:部门:ACCP产品开发培训部   修改人:王文  时间:2004-12-26
		public void CreateTable()
		{
			
			dtQuestion = null;//添加的代码
			//

			dtQuestion = new DataTable("QuestionBank");
			DataColumn pKeyCol  = dtQuestion.Columns.Add("QNumber",  typeof(Int32));
			pKeyCol.AllowDBNull = false;
			pKeyCol.Unique      = true;
			dtQuestion.Columns.Add("SubjectCode", typeof(String));
			dtQuestion.Columns.Add("QuestNo",     typeof(Int32));
			dtQuestion.Columns.Add("Question",    typeof(String));
			dtQuestion.Columns.Add("OptionA",     typeof(String));
			dtQuestion.Columns.Add("OptionB",     typeof(String));
			dtQuestion.Columns.Add("OptionC",     typeof(String));
			dtQuestion.Columns.Add("OptionD",     typeof(String));
			dtQuestion.Columns.Add("CorrectAns",  typeof(String));
			
		}

		private void radOptionA_CheckedChanged(object sender, System.EventArgs e)
		{
			if(radOptionA.Checked)
				corrAns = radOptionA.Text.Substring(0,radOptionA.Text.Length -1);
		}

		private void radOptionB_CheckedChanged(object sender, System.EventArgs e)
		{
			
			if(radOptionB.Checked)
				corrAns = radOptionB.Text.Substring(0,radOptionB.Text.Length -1);
		}

		private void radOptionC_CheckedChanged(object sender, System.EventArgs e)
		{
			if(radOptionC.Checked)
				corrAns = radOptionC.Text.Substring(0,radOptionC.Text.Length -1);
		}

		private void radOptionD_CheckedChanged(object sender, System.EventArgs e)
		{
			if(radOptionD.Checked)
				corrAns = radOptionD.Text.Substring(0,radOptionD.Text.Length -1);
		}

		private void btnHelp_Click(object sender, System.EventArgs e)
		{
			Help.ShowHelp(this,Environment.CurrentDirectory +@"\\OES_Help\OES_Help.chm");
		}

		private void lblExamTitle_Click(object sender, System.EventArgs e)
		{
		
		}
		
	}
}

⌨️ 快捷键说明

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