以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 求一个代码的写法 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=83731) |
||||
-- 作者:lovemaders -- 发布时间:2016/4/15 13:40:00 -- 求一个代码的写法 If Forms("窗口").Opened Then For Each c As WinForm.Control In forms("窗口").controls("TabControl2") ![]() ![]() [此贴子已经被作者于2016/4/15 13:40:49编辑过]
|
||||
-- 作者:lovemaders -- 发布时间:2016/4/15 13:42:00 -- 这个代码不对,求帮忙写一下,当打开页面合集的页面的时候如果,里面有表,那么底下那个文字就显示表名,如果页面没有表,那么久显示当前窗口没有表 |
||||
-- 作者:大红袍 -- 发布时间:2016/4/15 14:00:00 -- If Forms("窗口").Opened Then |
||||
-- 作者:lovemaders -- 发布时间:2016/4/15 14:36:00 -- 不行,当页面中有表的时候 不行,当页面中有表的时候,那行字直接隐藏什么字也不显示了。这个页面是从窗口加进来的页面?要怎么改呢 |
||||
-- 作者:大红袍 -- 发布时间:2016/4/15 14:38:00 -- 是不是你要显示的字符太长才不显示的?弄短一些呢?
怎么不行做个例子看看。 |
||||
-- 作者:lovemaders -- 发布时间:2016/4/15 15:47:00 -- 例子帮我看下
|
||||
-- 作者:大红袍 -- 发布时间:2016/4/15 16:09:00 -- If Forms("窗口1").Opened Then Dim lb2 As WinForm.Label = Forms("窗口1").Controls("label1") Dim Str2 As String = "当前窗口没有表" Dim tab = forms("窗口1").controls("TabControl1").Basecontrol For Each c As object In tab.SelectedTab.controls If TypeOf c Is Windows.Forms.form Then For Each bc As object In c.controls(0).controls If Typeof bc Is C1.Win.C1FlexGrid.C1FlexGridBase Then str2 = "正操作表名为:" & "【" & bc.Name & "】" & " 总行数:" Exit For End If Next Else If Typeof c Is winform.Table Then Dim tw As WinForm.Table = c str2 = "正操作表名为:" & "【" & tw.Name & "】" & " 总行数:" Exit For End If End If Next output.show(tab.SelectedTab.controls.count) lb2.text = str2 End If |
||||
-- 作者:lovemaders -- 发布时间:2016/4/15 17:19:00 -- 奇怪,放在这个例子中是可以得 奇怪,放在这个例子中是可以得,但是搬到我的项目里面去以后这个代码就不能用了额?我知道了,就是如果例子中,那个窗口不光只有一个表控件的时候可能焦点不在表上面,这个怎么处理呢 [此贴子已经被作者于2016/4/15 17:23:37编辑过]
|
||||
-- 作者:大红袍 -- 发布时间:2016/4/15 17:23:00 -- 把代码拷贝出来,加入msgbox,单独调试,看看是否进入执行语句。 |
||||
-- 作者:lovemaders -- 发布时间:2016/4/15 17:26:00 -- 如图这样 如图这个,因为表是在窗口中的控件分区面板中的,可能没焦点?所以用这个代码打开窗口页面的时候那个文体就是不变的那个当前窗口没有表,实际上里面是有表的,这个代码怎么改一下完善一下呢。 ![]() ![]() [此贴子已经被作者于2016/4/15 17:31:05编辑过]
|