以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 关于模式窗口的隐藏或关闭问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=20096)
|
-- 作者:yankunhao
-- 发布时间:2012/5/29 11:14:00
-- 关于模式窗口的隐藏或关闭问题
我设计了一个系统,其中有个登录表中有个登录窗口,该窗口为模式窗口,当用户启动系统时先打开这个窗口,用户这时只能见到这个窗口,当成功登录系统后关闭登录窗口,然后打开另一个表的模式窗口,这个时候当用户最小化这个窗口的时候,请问为什么还能看见到那个登录窗口(见到这个窗口,但该窗口的其他控件没显示)?
如果我想当用户最小化当前窗时,用户不能见到其他窗口或表,或其他菜单,就像登录时那样,应该如何做呢?
|
-- 作者:狐狸爸爸
-- 发布时间:2012/5/29 11:24:00
--
不要在模式窗口的关闭按钮中打开另一个模式窗口。
应该是:
Forms("模式窗口1").Open()
if 某个条件 Then
Forms("模式窗口2").Open()
end if
|
-- 作者:yankunhao
-- 发布时间:2012/5/29 11:29:00
--
我是在登录窗口的确定按钮中写代码的,当用户名和密码对的时候就打开加一个表的模式窗口的,但我发现那个登录窗口还是在当前窗口的背后,我客户要求不能这样的.
|
-- 作者:lsfdf
-- 发布时间:2012/5/29 11:32:00
--
同问
|
-- 作者:blackzhu
-- 发布时间:2012/5/29 11:42:00
--
登录按钮关闭当前窗口,打开其他窗口,不会有问题的.
|
-- 作者:lsfdf
-- 发布时间:2012/5/29 11:46:00
--
在确定 里 部分代码如下:关闭当前窗口,打开另外一个窗口,但关闭的窗口还是在后面 If e.Form.Controls("PassWord").Value = dr("Password") Then _UserName = UserName _UserGroup = dr("Group") e.Form.Close forms("main").open() Else Messagebox.show("密码错误!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) End If
[此贴子已经被作者于2012-5-29 11:46:36编辑过]
|
-- 作者:狐狸爸爸
-- 发布时间:2012/5/29 11:53:00
--
If e.Form.Controls("PassWord").Value = dr("Password") Then _UserName = UserName _UserGroup = dr("Group") e.Form.BaseForm.Hide e.Form.Close forms("main").open() Else Messagebox.show("密码错误!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) End If
|
-- 作者:yankunhao
-- 发布时间:2012/5/29 14:12:00
--
我试来试去,都不成功啊,代码如下:
Dim r As String =e.Form.Controls("ComboBox1").Value Dim mm As String =e.Form.Controls("TextBox1").Value Dim kj As String=e.Form.Controls("TextBox2").Value Dim dr As DataRow \'在用户表查找所输入用户名与密码的行 dr = DataTables("用户").Find("[用户] = \'" & r & "\' And [密码] = \'" & mm & "\'") If dr IsNot Nothing Then \'如果找到 If dr("暂停登录")=False Then Vars("_UserGroup") =dr("组") Vars("部门名称")=dr("部门名称") Vars("用户编码")=dr("用户编码") Vars("会计期间")=kj Tables("登陆")(0)("用户名") = r \'与入当前表第一行用户名列为输入用户名 Tables("登陆")(0)("会计期间") = kj Tables("登陆")(0)("密码")=mm Vars("_UserName") = r \'写入全局变量 e.Form.Close() \'关闭窗口 For Each t As Table In Tables t.Visible = True t.AllowEdit = True t.AllowLockRow = True t.AllowUnlockRow=True t.AllowDelete =True t.AllowAddNew=True \'For Each c As Col In t.Cols \'c.Visible = True \'c.AllowEdit = True \'Next Next If Vars("_UserName")="administrator" Then Tables("登陆").Visible = True Tables("提示").Visible = True Tables("用户").Visible = True Tables("授权表").Visible = True Else Tables("登陆").Visible = False Tables("提示").Visible = False Tables("用户").Visible = False Tables("授权表").Visible = False End If If Vars("_UserGroup") <> "程序开发" Then For Each dr1 As DataRow In DataTables("授权表").Select("用户名 = \'" & Vars("_UserName")& "\'" ) If dr1.IsNull("列名") Then Tables(dr1("表名")).Visible = Not dr1("不可见") Tables(dr1("表名")).AllowEdit = Not dr1("不可编辑") Else Tables(dr1("表名")).Cols(dr1("列名")).Visible = Not dr1("不可见") Tables(dr1("表名")).Cols(dr1("列名")).AllowEdit = Not dr1("不可编辑") End If If dr1("可审核")=True Then Tables(dr1("表名")).AllowLockRow = True Else Tables(dr1("表名")).AllowLockRow = False End If If dr1("可反审核")=True Then Tables(dr1("表名")).AllowUnlockRow = True Else Tables(dr1("表名")).AllowUnlockRow = False End If If dr1("不可删除")=True Then Tables(dr1("表名")).AllowDelete = False Else Tables(dr1("表名")).AllowDelete = True End If If dr1("不可复制")=True Then DataTables(dr1("表名")).AllowClipBoard = False Else DataTables(dr1("表名")).AllowClipBoard = True End If If dr1("不可增加")=True Then DataTables(dr1("表名")).AllowAddNew = False Else DataTables(dr1("表名")).AllowAddNew = True End If Next End If \'For Each rb As RibbonMenu.Tab In RibbonTabs \'RibbonTabs是一个菜单集合,可以用for each遍历的 \'rb.Visible = True \'显示菜单 \'Next \'按用户组显示或隐藏菜单项目 If Vars("_UserGroup") <> "程序开发" Then RibbonTabs("Other")("Export")("QuickExport").Visible = False RibbonTabs("Other")("Export")("ToText").Visible = False RibbonTabs("Other")("Export")("ToXML").Visible = False Else RibbonTabs("Other")("Export")("QuickExport").Visible = True RibbonTabs("Other")("Export")("ToText").Visible = True RibbonTabs("Other")("Export")("ToXML").Visible = True End If e.Form.Close Forms("产品规格表").Open MainTable=Tables("obas_part_spec") \'登陆成功 If Forms("产品规格表").Opened=True Then Forms("登陆").BaseForm.Hide End If \'Dim dr2 As DataRow \'在用户表查找所输入用户名与密码的行 \'dr2 = DataTables("用户").Find("[用户] = \'" & r & "\'" ) \'If dr2 IsNot Nothing Then \'如果找到 \'If dr("自动登录")=False Then \'Return \'Else \'MainTable=Tables("obas_part_spec") \'Tables("物料库存月报表").OpenLoadTree("month_no|wh_name",150,30) \'End If \'End If Else MessageBox.Show("用户已被暂停使用!,请与管理员联系", "提示", MessageBoxButtons.ok, MessageBoxIcon.Error) e.Form.Controls("TextBox1").Select() \'将输入焦点移到密码文本框中. End If Else MessageBox.Show("用户名或密码错误!", "提示", MessageBoxButtons.ok, MessageBoxIcon.Error) e.Form.Controls("TextBox1").Select() \'将输入焦点移到密码文本框中. End If
|
-- 作者:yankunhao
-- 发布时间:2012/5/29 14:20:00
--
试成功了,登录窗口可以隐藏了,但假设我想隐藏当前窗口的背后表及菜单,有没办法呢?意思是就是只见到模式窗口,当最小化模式窗口或拖动模式窗口时到看不背后的表及菜单..
|
-- 作者:狐狸爸爸
-- 发布时间:2012/5/29 15:24:00
--
开发版发布后的项目,启动之后,就只有登录窗口,不会有后面的菜单。
|