Foxtable(狐表)用户栏目专家坐堂 → basemainform相关问题!


  共有3904人关注过本帖树形打印复制链接

主题:basemainform相关问题!

帅哥哟,离线,有人找我吗?
ycwk
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
basemainform相关问题!  发帖心情 Post By:2016/7/16 23:25:00 [只看该作者]

制作了一个模式窗口,打开和关闭时都不想显示后面的basemainform ,在窗口的afterclose写了如下代码:

Syscmd.Project.Save()

Syscmd.Project.Exit(True)



但是窗口关闭的后的确不会再打开basemainform了,但就会报错如下:


图片点击可在新窗口打开查看此主题相关图片如下:11.png
图片点击可在新窗口打开查看


按住ctrl 又会报下面的错误,  就再也进不了basemainform了。  但我另一外一套程序openQQ也是这么写的就没问题,不知道何故!


 .NET Framework 版本:2.0.50727.8689
Foxtable 版本:2016.6.10.1
错误所在事件:窗口,软件自助报障系统窗口,AfterLoad
详细错误信息:
未将对象引用设置到对象的实例。

afterload 事件代码如下:

Tables("自助报障记录表").Current("记录人")=user.Name    '当前操作员的姓名存到数据库中
Dim IPAdress As System.Net.IPAddress 
Dim HostName As String
HostName = System.Net.Dns.GetHostName '获得本机的机器名 
IPAdress = System.Net.Dns.GetHostByName(HostName).AddressList.GetValue(0) '获得本机的IP 
'OutPut.Show( HostName )  '本机机器名 
' OutPut.Show(IPAdress.ToString )  '本机的IP
'MessageBox.Show(HostName)
'MessageBox.Show(IPAdress.ToString)

Tables("自助报障记录表").Current("报障电脑主机名")  =HostName
Tables("自助报障记录表").Current("报障电脑IP")  =IPAdress.ToString

'报障人自动填为当前用户
Tables("自助报障记录表").Current("报障人")= User.Name


注: 该模式窗口所有者表为空。


代码如下: 由于数据库在内网里面,故连接可能有问题。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:软件自助报障系统7.rar




 回到顶部
帅哥哟,离线,有人找我吗?
ycwk
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2016/7/16 23:32:00 [只看该作者]


[此贴子已经被作者于2016/7/25 17:42:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
ycwk
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2016/7/17 22:30:00 [只看该作者]

查看别人的代码,发现一招,谢谢大神!


但是我发现程序关闭后,仍然不能彻底关闭,在任务管理器里面仍然有程序运行,关闭窗口的时候怎么彻底关闭任务呢?


Forms("窗口1").Open(-1000,-1000)

Basemainform.ShowIcon = False
[此贴子已经被作者于2016/7/17 22:32:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Hyphen
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/7/18 9:32:00 [只看该作者]

我测试是进程已经关闭的。

最好转换为内部表的项目发上来测试,连不上数据库,我是在出现错误的情况下测试的

 回到顶部
帅哥哟,离线,有人找我吗?
ycwk
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2016/7/25 17:45:00 [只看该作者]

关闭窗口后,但是foxtable 仍然在任务栏里面运行,导致我再启动程序后,无法使用 热键 (f10) 截图了。重启电脑或者结束任务后又会恢复!    没有办法在关闭窗口后强制结束任务吗?


另外想问一下, Messagebox有没有办法做成一个模态窗口?  有时候弹出来的时候并不在最上层,而是在下层,不容易看到

 回到顶部
帅哥哟,离线,有人找我吗?
ycwk
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2016/7/25 17:51:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:11.png
图片点击可在新窗口打开查看

就是狐爸说的这个情况,请问如何解决?   我做的是个窗口程序,必须得隐藏后面的basemainform

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/25 18:03:00 [只看该作者]

试试这样写代码

 

Dim ps As  System.Diagnostics.Process() = System.Diagnostics.Process.GetProcessesByName("foxtable")
For Each p As System.Diagnostics.Process In ps

    msgbox(p.MainWindowTitle)
    If p.MainWindowTitle = "你系统标题" Then  p.kill
Next


 回到顶部
帅哥哟,离线,有人找我吗?
ycwk
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2016/7/25 18:37:00 [只看该作者]

另外想问一下, Messagebox有没有办法做成一个模态窗口?  有时候弹出来的时候并不在最上层,而是在下层,不容易看到?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/25 18:40:00 [只看该作者]

 参考

 

MessageBox.Show("提示!", "重要提示",MessageBoxButtons.Ok,MessageBoxIcon.Question, 0, Windows.forms.MessageBoxOptions.ServiceNotification)


 回到顶部
帅哥哟,离线,有人找我吗?
ycwk
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1228 积分:8561 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2016/7/26 8:34:00 [只看该作者]

在模式窗口的afterload事件中,加了下面这句话,可是打开窗口和关闭窗口都会弹出,不知何故?  
MessageBox.show("由于现在时间为非上班时间,自助报障可能无法及时受理,请拨打值班电话66666先咨询" )

 回到顶部
总数 19 1 2 下一页