1、问题:在开发WIN程序时登录界面的风格是什么样了的?
解决:在开发WIN程序时登录界面应该简单明了,便于操作,视觉效果才会更佳,界面字体字号一般为VS2005系统默认最佳(宋体9pt),WIN程序通常只需要"登录"和"退出"两个按钮即可。
2、问题:当用户登录验证成功后,进入主界面后为什么登录界面不能关闭掉?
解决:那是因为VS2005默认的是第一次创建的窗体为启动窗体(也就是那个登录窗),所以进入主界面后不能把登录窗体关闭掉,就是能把登录窗体关闭了,那主窗体也随之被关掉了,也就是整个应用程序就结束了,解决方法就是把启动窗体改为主界面;
//在Program.cs文件中改:
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form1 Fm = new Form1();//先创建登录窗体
Fm.ShowDialog();
if (Fm.DialogResult == DialogResult.OK) //要先把登录窗体的"登录"按钮DialogResult属性设置为ok,才能这样判断
{
Application.Run(new mainForm()); //这里设置启动窗体为主界面mainForm
}
//在登录窗体的"登录"按钮的的click事件中(部分代码):
if (Pword.CompareTo(user1.Password) == 0)
//成功登录
{
//this.Close();
this.DialogResult = DialogResult.OK; //会自动关闭掉这个窗体
}
3、问题:怎样才能把主界面上的所有菜单添加到权限列表中,遇到的问题怎样才能在权限窗体中调用主窗体中的菜单控件menustrip?
解决:在权限窗体的构造函数中添加主窗体类型的参数
public partial class grantForm : Form
{
private mainForm Fm;
string treeItem="";
public grantForm(mainForm Fmain)
{
InitializeComponent();
Fm = Fmain; //传过来的主窗体引用赋值给主窗体类型Fm,就可以用Fm.menustrip1
}
//其它函数
}
//在主窗体的某个按钮的单击事件中
private void 设置权限ToolStripMenuItem_Click(object sender, EventArgs e)
{
grantForm gForm = new grantForm(this); //this代表主窗体
gForm.Show();
}