C#检查输入框是否为空问题!
想写个函数用于判断文本输入框是否为空的函数,实现这种功能:if(this.empNo.Text==""){MessageBox.Show("职员编号不能为空!","系统提...
想写个函数用于判断文本输入框是否为空的函数,实现这种功能:
if (this.empNo.Text == "")
{
MessageBox.Show("职员编号不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.empNo.Focus();
return;
}
if (this.empName.Text == "")
{
MessageBox.Show("职员姓名不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.empName.Focus();
return;
}
函数写法如下,现在的问题的检测到一个空文本框的时候不会终止程序,请教各位该怎么改好?(就是return那里,刚学C#,书上说void里面用return没用)
public void checkInput(TextBox myTextBox)
{
string tagTextBox = "";
if (myTextBox.Text == "")
{
tagTextBox = myTextBox.Tag.ToString();
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
}
} 展开
if (this.empNo.Text == "")
{
MessageBox.Show("职员编号不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.empNo.Focus();
return;
}
if (this.empName.Text == "")
{
MessageBox.Show("职员姓名不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.empName.Focus();
return;
}
函数写法如下,现在的问题的检测到一个空文本框的时候不会终止程序,请教各位该怎么改好?(就是return那里,刚学C#,书上说void里面用return没用)
public void checkInput(TextBox myTextBox)
{
string tagTextBox = "";
if (myTextBox.Text == "")
{
tagTextBox = myTextBox.Tag.ToString();
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
}
} 展开
展开全部
因为函数化了以后,调用多次函数的话,中间是不会停的。
解决方案是:
你把函数放个返回值,表示是否终止后面的动作。
改成
public int checkInput(TextBox myTextBox)
{
string tagTextBox = "";
if (myTextBox.Text == "")
{
tagTextBox = myTextBox.Tag.ToString();
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
return -1;
}
return 1;
}
调用时
if(checkInput(textname)==-1)
return;
这样发现某个输入有问题时,就会返回,不会再检查其他的输入了
不懂可以再问
解决方案是:
你把函数放个返回值,表示是否终止后面的动作。
改成
public int checkInput(TextBox myTextBox)
{
string tagTextBox = "";
if (myTextBox.Text == "")
{
tagTextBox = myTextBox.Tag.ToString();
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
return -1;
}
return 1;
}
调用时
if(checkInput(textname)==-1)
return;
这样发现某个输入有问题时,就会返回,不会再检查其他的输入了
不懂可以再问
展开全部
if(myTextBox.Text.trim() =="")去除空格符再判断就行了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写了点代码,代码是这样的
if (!string.IsNullOrEmpty("myTextBox.Text"))
{
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
}
用下看看
if (!string.IsNullOrEmpty("myTextBox.Text"))
{
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
}
用下看看
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把这个方法改带返回值的:
public bool checkInput(TextBox myTextBox)
{
string tagTextBox = "";
bool flag = false;
if (myTextBox.Text == "")
{
tagTextBox = myTextBox.Tag.ToString();
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
flag = false;
}
else
{
flag = true;
}
return flag;
}
然后在你调用这个方法的代码段里
if(!checkInput( empNo))
return;
if(!checkInput(empName))
return;
文本框判断的逻辑思路很多, 只要逻辑对了,怎么判断都行, 你想要终止代码运行下去, 是在代码段里return, return只是终止方法内的代码段, 也就相当于跳出这个方法,对方法外的程序不起作用的
public bool checkInput(TextBox myTextBox)
{
string tagTextBox = "";
bool flag = false;
if (myTextBox.Text == "")
{
tagTextBox = myTextBox.Tag.ToString();
MessageBox.Show(tagTextBox + "不能为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
myTextBox.Focus();
flag = false;
}
else
{
flag = true;
}
return flag;
}
然后在你调用这个方法的代码段里
if(!checkInput( empNo))
return;
if(!checkInput(empName))
return;
文本框判断的逻辑思路很多, 只要逻辑对了,怎么判断都行, 你想要终止代码运行下去, 是在代码段里return, return只是终止方法内的代码段, 也就相当于跳出这个方法,对方法外的程序不起作用的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
return 改为 break
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询