不过这与撸主所说的窗体程序不同,也与windows控制台应用程序不同。
如果撸主要写窗体程序的话,建立工程时需要选择MFC项目--对话框应用程序,这是最基础的,因为它提供了可视化的控件拖动编辑。当然,单文档与多文档也可以,不过比对话框程序更复杂更难。
撸主下面所说的那个代码是控制台应用程序,是无法可视化的。而且,控制台应用程序的入口函数为main,而win32非控制台应用程序的入口函数一和罩般为WinMain,所以,撸主还请不要把它们这两类弄混淆了。
如果撸主想要在后台写可视化程序的话【也就是撸主所说的,该怎样去写、在哪里去写那些代码】,那么撸主需要有面向对象的编程经验。举个例子,MFC应用程序这整个对象是在windows提供的CWnd类的基础上继承而来的,程序员要做的就是重写它所提供的虚函数们,以及运用事件。在这样的一种开发框架下,程序员至少需要对 封装、继承 和 多唤含闹态非常熟悉,因为可视化程序中的各种组成部分都是以对象的形式存在的。
所以我建议撸主先要熟练掌握C++的类部分,然后尝试从MFC模版的对话框程序入手,最后深入后台编译器自动生成的代码,一步步掌握windows对象类型,最终可以自己来写那些可视化后台代码。
希望对撸主有老薯帮助。
就登录的代码:数据库连接代码放在
public partial class Studentdenglu : Form
{
SqlConnection conn = new SqlConnection("Data Source=localhostDatabase=studentInPersist Security Info=TrueUID=saPWD=123")数据库连接字符串
int PasswordErrorCount = 0定义一个密码错误统计变量
里
在Click事件下写
private void btndenglu_Click(object sender, EventArgs e)
{
if (txtuserid.Text == "")
{
MessageBox.Show("用户ID不能为空", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
}
else if (txtpwd.Text == "")
{
MessageBox.Show("密码不能为空", "源灶册提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
}
else
{
DataSet dd = new DataSet()
string sql = "select * from manager where zhanghao='" + txtuserid.Text + "'and password='" + txtpwd.Text + "'
SqlDataAdapter cmd = new SqlDataAdapter(sql, conn)
cmd.Fill(dd)
if (dd.Tables[0].Rows.Count == 0)
{
if (++PasswordErrorCount >= 3)
{
MessageBox.Show("密码错误三次,被迫雹宏退出")
this.Close()
}
else
{
MessageBox.Show("输入的密码错误,您已错误" + PasswordErrorCount + "次。", "错误辩搜", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
this.txtuserid.Focus()
cbosf.Text = ""
this.txtuserid.Text = ""
this.txtpwd.Text = ""
}
}
else
{
MessageBox.Show("登陆成功!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information)
}
}
}
}
以下程序在TextBox中输入以逗号分隔的整型数,而且可以输入任意数量的整型数。
(1)在窗体上布置一个TextBox和一个Button
(2)窗体代码Form1.cs如下
using Systemusing System.Collections.Generic
using System.Windows.Forms
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
陆仔昌{
// 存放输入的整型数组
早扒 戚坦 int[] a
public Form1()
{
InitializeComponent()
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == string.Empty) return
string[] numbers = textBox1.Text.Split(',')
List<int> list = new List<int>()
foreach (var s in numbers)
{
int v
if (int.TryParse(s, out v))
{
list.Add(v)
}
}
// 将集合转换为数组
a = list.ToArray()
}
}
}
查看数组a
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)