日期:2014-05-17  浏览次数:20801 次

看到一个系统功能不知道怎么实现
本帖最后由 bulls5988 于 2013-01-25 09:49:46 编辑
就是一个会员卡批量制卡的程序,有2个textbox1、textbox2,分别代表卡的起始号码和终止号码。输入按确定按钮(botton1)后(比如 02140001到02140010)在一个LISTBOX1就出现10行卡号:02140001、02140002、02140003...02140010,下面有一个LISTBOX2,点击制卡按钮(botton2)成功后,而且制卡按钮中要取被选中的这条记录的内容比如:“02140001”。再把这条记录比如02140001从listbox1移动到listbox2中。这个过程应该怎么编写呢?

------解决方案--------------------
参考
c#入门经典 
c#从入门到精通

------解决方案--------------------
LISTBOX1.items.add()
LISTBOX2.items.remove()
------解决方案--------------------
,这个很简单吧,LZ你多加强动手能力哦。
------解决方案--------------------
简单的 控件属性 方法和事件  
------解决方案--------------------
用item的 add remove方法就可以  流程自己控制一下
  
------解决方案--------------------
引用:
大家想的太简单了吧,不知道大家发现没有。
我的卡是0打头的,而且中间也可能有很多“0”出现,如果用循环解决一定要使用数字型变量,数字型变量只能出现1~10000而做不出来00001~100000这种格式,用字符型数字又不能实现上一张卡号+1,000001下一张就应该是000001+1 这样结果。这个地方应该是问题的核心

for (int i = int.Parse(Regex.Match(textBox1.Text, "\\d+$").Value); i <= int.Parse(Regex.Match(textBox2.Text, "\\d+$").Value); i++)
{
    listBox1.Items.Add(Regex.Match(textBox1.Text, "(\\w+)\\d+$").Groups[1].Value + i.ToString().PadLeft(Regex.Match(textBox1.Text, "\\d+$").Value.Length, '0'));
}
------解决方案--------------------
 int start = Convert.ToInt32("021600001");
            int end = Convert.ToInt32("021600010");
           while(start<=end)
               listBox1.Items.Add(start++.ToString().PadLeft(9,'0'));