永发信息网

急 C# 输入数据不能重复问题 当用户在richTextBox输入框中输入数据的时候,不能让第二个数与第一个数重复

答案:3  悬赏:10  手机版
解决时间 2021-02-08 23:42
  • 提问者网友:你独家记忆
  • 2021-02-08 16:55
private void inputText_TextChanged(object sender, EventArgs e)
{

if (System.Text.RegularExpressions.Regex.IsMatch(inputText.Text, @"^[0-9]\d*$"))
{
if (inputText.Text.Length <= 4)
{
rules(sender, e);
inputText.Text = "";
inputText.Focus();
}
}
else
{
inputText.Text = "";
}
}

///
/// 比对结果及规则限制、计时器提示等
///

///
///
private void rules(object sender,EventArgs e)
{
int a = 0;
int b = 0;

for (int r = 0; r < inputText.Text.Length; r++)
{
//判断玩家输入的数据与电脑随机产生的数据相对比
if (inputText.Text[r].Equals(randomText.Text[r]))
{
a++;
}
if (inputText.Text.Contains(randomText.Text[r]))
{
b++;
}
// 输入的字符如果有相同的,则清空输入框,并让玩家重新输入
if ( inputText.Text[0].Equals(inputText.Text[1]) ||
inputText.Text[0].Equals(inputText.Text[2]) ||
inputText.Text[0].Equals(inputText.Text[3]) ||
inputText.Text[1].Equals(inputText.Text[2]) ||
inputText.Text[1].Equals(inputText.Text[3]) ||
inputText.Text[2].Equals(inputText.Text[3])
)
{
inputText.Text = "";
break;
}
}
}
位什么上面if (inputText.Text.Length == 4)的时候没事,而<=4 的时候会抛出如下异常。。。。。。怎么解决??

未处理 System.IndexOutOfRangeException
Message=Index was outside the bounds of the array.
Source=mscorlib

可以不看上面代码(有点乱)
我的本意就是,在一个输入框中,只能让用户输入4个数字,并且不能重复。而且还要当检测到第二个数字与第一个相同时,就弹出一个警告框,如何让其实现,用CSharp解决。。。。。急啊!!!!!!!!!!!!!11
最佳答案
  • 五星知识达人网友:忘川信使
  • 2021-02-08 18:27
if ( inputText.Text[0].Equals(inputText.Text[1]) ||
inputText.Text[0].Equals(inputText.Text[2]) ||
inputText.Text[0].Equals(inputText.Text[3]) ||
inputText.Text[1].Equals(inputText.Text[2]) ||
inputText.Text[1].Equals(inputText.Text[3]) ||
inputText.Text[2].Equals(inputText.Text[3])
//你数组长度 小于4的时候 能用inputText.Text[3]???
全部回答
  • 1楼网友:忘川信使
  • 2021-02-08 18:57
没懂
  • 2楼网友:舍身薄凉客
  • 2021-02-08 18:35
? 再看看别人怎么说的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯