以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 页面集合上复制控件 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=127942) |
-- 作者:kmzb56 -- 发布时间:2018/11/25 21:49:00 -- 页面集合上复制控件 一个页面集合上做了很多个页面,每个页面做了好多个控件,现在是想在另一个页面上做控件,能不能快速复制的方式把第一个页面的复制到另一个页面? |
-- 作者:有点甜 -- 发布时间:2018/11/25 22:54:00 --
没办法,foxtable暂时没有多个控件一起复制的功能。只能一个一个的复制。
[此贴子已经被作者于2018/11/25 22:53:46编辑过]
|
-- 作者:kmzb56 -- 发布时间:2018/11/26 12:07:00 -- 有其它办法没?我有十多个分页,下面那个,删除,查询,其它功能等,除了副表不一样外,其它都一样,每个都去弄好麻烦呀,有其它巧办法没? |
-- 作者:有点甜 -- 发布时间:2018/11/26 12:11:00 -- 以下是引用kmzb56在2018/11/26 12:07:00的发言:
有其它办法没?我有十多个分页,下面那个,删除,查询,其它功能等,除了副表不一样外,其它都一样,每个都去弄好麻烦呀,有其它巧办法没?
1、你不可以把公共的部分,放在外面?为什么要重复?
2、没办法,无法多个一起复制。 |
-- 作者:kmzb56 -- 发布时间:2018/11/26 12:34:00 -- 放外面?这个思路应该也可以,这样的话,那我代码部分得根据当前页面对应的副表变化而变化,那我想问一下,怎么返回表名?或页面标题名?放在代码里。 |
-- 作者:有点甜 -- 发布时间:2018/11/26 14:53:00 -- 以下是引用kmzb56在2018/11/26 12:34:00的发言:
放外面?这个思路应该也可以,这样的话,那我代码部分得根据当前页面对应的副表变化而变化,那我想问一下,怎么返回表名?或页面标题名?放在代码里。
1、你可以根据选定的页面编写代码,如
Dim tab As WinForm.TabControl = e.Form.controls("TabControl1")
ElseIf tab.SelectedPage.name = "page2" Then
End If
2、你可以判断当前表写代码,如
If currentTable.name = "表A" Then
ElseIf currentTable.name = "表B" Then
End If |
-- 作者:kmzb56 -- 发布时间:2018/11/27 22:56:00 -- Dim tab As WinForm.TabControl = e.Form.controls("TabControl1") If tab.SelectedPage.name = "TabControl1" Then Tables("收付款帐户_table1").AddNew() End If If tab.SelectedPage.name = "TabControl2" Then Tables("收付款帐户_table2").AddNew() End If If tab.SelectedPage.name = "TabControl3" Then Tables("收付款帐户_table3").AddNew() End If If tab.SelectedPage.name = "TabControl4" Then Tables("收付款帐户_table4").AddNew() End If If tab.SelectedPage.name = "TabControl5" Then Tables("收付款帐户_table5").AddNew() End If If tab.SelectedPage.name = "TabControl6" Then Tables("收付款帐户_table6").AddNew() End If If tab.SelectedPage.name = "TabControl7" Then Tables("收付款帐户_table7").AddNew() End If If tab.SelectedPage.name = "TabControl8" Then Tables("收付款帐户_table8").AddNew() End If If tab.SelectedPage.name = "TabControl9" Then Tables("收付款帐户_table9").AddNew() End If If tab.SelectedPage.name = "TabControl10" Then Tables("收付款帐户_table10").AddNew() End If If tab.SelectedPage.name = "TabControl11" Then Tables("收付款帐户_table11").AddNew() End If If tab.SelectedPage.name = "TabControl12" Then Tables("收付款帐户_table12").AddNew() End If If tab.SelectedPage.name = "TabControl13" Then Tables("收付款帐户_table13").AddNew() End If 有更简洁点的语句没?好像这种也存在没有值的情况,不知怎么是最好的?
|
-- 作者:有点蓝 -- 发布时间:2018/11/27 23:00:00 -- 利用空间命名规则处理,3行代码即可 Dim tab As WinForm.TabControl = e.Form.controls("TabControl1") Dim i As String = tab.SelectedPage.name.Replace("TabControl","") Tables("收付款帐户_table" & i).AddNew() [此贴子已经被作者于2018/11/27 22:59:56编辑过]
|
-- 作者:kmzb56 -- 发布时间:2018/11/29 10:12:00 -- 这个方法超好用,太感谢了!省了我好多事, 但我想 Dim tab As WinForm.TabControl = e.Form.controls("TabControl1") Dim i As String = tab.SelectedPage.name.Replace("TabControl","") Dim r As Row=Tables("收付款帐户_table" & i).current Dim dr As Row=Tables("派车记录表.付司机款记录").Current r("说明")=dr("付款备注") dr("付款金额")=r("支出") dr("付款方式")=" " 这里想用页面集合的分页名代替,或者用对应的副表的表名代替,请问怎么弄?试了几下都不行 请问怎么弄? |
-- 作者:有点甜 -- 发布时间:2018/11/29 10:29:00 --
dr("付款方式")=tab.SelectedPage.text
|