Foxtable(狐表)用户栏目专家坐堂 → TabControl怎么根据选择的卡片项不同执行对应的动作!


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

主题:TabControl怎么根据选择的卡片项不同执行对应的动作!

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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
TabControl怎么根据选择的卡片项不同执行对应的动作!  发帖心情 Post By:2022/5/24 10:29:00 [只看该作者]

图片点击可在新窗口打开查看
方式一:
Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")
If tb.SelectedIndex = 0  Then
    e.Form.Controls("Panel1").Basecontrol.controls("mplayer").close
End If
方式二:
Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")
If tb.SelectedPage.Text = "知识库"  Then
    e.Form.Controls("Panel1").Basecontrol.controls("mplayer").close
End If

两种方式均没有实现close关闭动作!
[此贴子已经被作者于2022/5/24 10:30:08编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112018 积分:570268 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/5/24 10:31:00 [只看该作者]

方式一判断是如果选择的是第一个页签
方式二判断是如果选择的页签名称是xxx

根据自己的需要使用

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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
回复:(有点蓝)方式一判断是如果选择的是第一个页签...  发帖心情 Post By:2022/5/24 10:39:00 [只看该作者]

    Dim mplayer As new AxWMPLib.AxWindowsMediaPlayer()
    mplayer.name = "mplayer"
    mplayer.Dock = System.Windows.Forms.DockStyle.Fill
    e.Form.Controls("Panel1").Basecontrol.controls.add(mplayer)


在操作方式1.2之前运行了如上代码

然后操作方式1.2结果没有运行e.Form.Controls("Panel1").Basecontrol.controls("mplayer").close

且方式一还提示错误:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.1.30.2
错误所在事件:窗口,知识库,TabControl1,SelectedIndexChanged
详细错误信息:
未设置对象变量或 With 块变量。
[此贴子已经被作者于2022/5/24 10:41:39编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112018 积分:570268 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/5/24 10:54:00 [只看该作者]

完整代码

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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
回复:(有点蓝)完整代码  发帖心情 Post By:2022/5/24 11:12:00 [只看该作者]

全局代码:Public mplayer As new AxWMPLib.AxWindowsMediaPlayer()

播放视频按钮代码:
Dim wb As WinForm.WebBrowser = e.Form.Controls("WebBrowser1")
Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")
Dim pc As WinForm.PictureBox = e.Form.Controls("PictureBox1")
tb.SelectedIndex=2
'Dim mplayer As new AxWMPLib.AxWindowsMediaPlayer()
mplayer.name = "mplayer"
mplayer.Dock = System.Windows.Forms.DockStyle.Fill
e.Form.Controls("Panel1").Basecontrol.controls.add(mplayer)
mplayer.url =  vars("文件")
wb.Address = Nothing
pc.Image = GetImage(Nothing)

TabControl2控件SelectedIndexChanged代码:

Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")

If tb.SelectedPage.text = "知识库"  Then

    e.Form.Controls("Panel1").Basecontrol.controls("mplayer").ctlcontrols.pause

End If

'

'Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")

'If tb.SelectedIndex = 0  Then

'MessageBox.Show("1")

'e.Form.Controls("Panel1").Basecontrol.controls("mplayer").close

'End If


 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112018 积分:570268 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/5/24 11:30:00 [只看该作者]

TabControl2控件SelectedIndexChanged代码:

Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")

If tb.SelectedPage.text = "知识库"  Then

    mplayer.ctlcontrols.pause

End If


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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
回复:(有点蓝)TabControl2控件SelectedIndexChange...  发帖心情 Post By:2022/5/24 11:36:00 [只看该作者]

提示如下错误:
---------------------------
编译错误:需要对程序集“Interop.WMPLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”(包含类型“WMPLib.IWMPControls”)的引用。请在项目中添加一个。
错误代码:mplayer.ctlcontrols.pause
---------------------------


 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112018 积分:570268 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/5/24 11:43:00 [只看该作者]

请上传实例说明

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


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
回复:(有点蓝)请上传实例说明  发帖心情 Post By:2022/5/24 16:16:00 [只看该作者]



以下内容是专门发给有点蓝浏览


麻烦老师指导下,另外在打开或关闭的时候 会报错
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.1.30.2
错误所在事件:窗口,知识库,BeforeClose
详细错误信息:
引发类型为“System.Windows.Forms.AxHost+InvalidActiveXStateException”的异常。

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112018 积分:570268 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/5/24 16:35:00 [只看该作者]

下面用法我测试都没有问题
e.Form.Controls("Panel1").Basecontrol.controls("mplayer").ctlcontrols.pause
mplayer.ctlcontrols.pause

关闭退出项目,删除项目所在的文件夹里的bin目录,然后重启项目试试。

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