以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于列设置 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=132241) |
||||
-- 作者:裴保民 -- 发布时间:2019/3/17 23:14:00 -- 关于列设置 在列设置此窗体的保存设置按钮写了如下代码,运行后怎么不保存相对应的表呢? Dim clist As WinForm.CheckedListBox = e.Form.Controls("lieCheckedListBox") For i As Integer = clist.Items.Count - 1 To 0 Step -1 CurrentTable.Cols(i).Visible = not clist.GetItemChecked(i) Next Dim t As WinForm.Table = e.Form.Controls("Table1") Dim fdr As DataRow = DataTables("列设置").Find("表名 = \'" & t.Table.DataTable.Name & "\'") If fdr Is Nothing Then fdr = DataTables("列设置").AddNew fdr("表名") =t.Table.DataTable.Name End If fdr("列设置") = CurrentTable.GetColVisibleWidth
[此贴子已经被作者于2019/3/17 23:15:15编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/3/18 9:30:00 -- 1、你设置了以后,就保存了啊。去你的表格那里看数据;
2、你把表名写错了啊
Dim bm As String = "" Dim clist As WinForm.CheckedListBox = e.Form.Controls("lieCheckedListBox") fdr("列设置") = CurrentTable.GetColVisibleWidth
3、各个窗口,在afterload事件,要写设置代码啊,认认真真看懂实例
|
||||
-- 作者:裴保民 -- 发布时间:2019/3/18 22:09:00 -- Dim szldkdysx As WinForm.RadioButton = e.Form.Controls("szldkdysxRadioButton") Dim liexz As WinForm.CheckedListBox = e.Form.Controls("lieCheckedListBox") Dim t As WinForm.Table = e.Form.Controls("Table1") If szldkdysx.Checked=True Then e.Form.Controls("tzlsxGroupBox").Enabled=True e.Form.Controls("ycyxslGroupBox").Enabled=False e.Form.Controls("sjldczGroupBox").Enabled=False liexz.Value ="" liexz.SelectedValue="" End If Dim s As String s = "" For Each c As Col In t.Table.cols If c.Visible Then s &= c.name & "|" End If Next liexz.Items.Clear liexz.ComboList=s 在单选框的CheckedChanged事件中写了如上代码运行后窗体表闪屏的特别厉害怎么处理? 如果改为下面的代码会弹出 SystemReady = False For Each c As Col In t.Table.cols If c.Visible Then s &= c.name & "|" End If Next SystemReady = True[此贴子已经被作者于2019/3/18 22:19:14编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2019/3/18 22:45:00 -- 检查,itemcheck事件代码。看那一句代码出错。 |
||||
-- 作者:裴保民 -- 发布时间:2019/3/19 9:28:00 -- 不同角色进去后指定列不加载怎么设置? |
||||
-- 作者:有点甜 -- 发布时间:2019/3/19 9:40:00 -- 以下是引用裴保民在2019/3/19 9:28:00的发言:
不同角色进去后指定列不加载怎么设置?
你的列设置表那里,加入一个【用户】列,填入对应的用户。
查找对应用户的数据,设置,即可。
不然,你就参考这里处理,如 http://www.foxtable.com/webhelp/scr/1600.htm
|
||||
-- 作者:裴保民 -- 发布时间:2019/3/20 0:20:00 -- 出现错误对话框看看是哪的错误呢?在单选框的CheckedChanged事件中写了如下代码 Dim ldsxyyc As WinForm.RadioButton = e.Form.Controls("ldxsyycRadioButton") Dim liexz As WinForm.CheckedListBox = e.Form.Controls("lieCheckedListBox") Dim t As WinForm.Table = e.Form.Controls("Table1") Dim str As String = "" If ldsxyyc .Checked=True Then e.Form.Controls("tzlsxGroupBox").Enabled=False e.Form.Controls("ycyxslGroupBox").Enabled=True e.Form.Controls("sjldczGroupBox").Enabled=True liexz.Value ="" liexz.SelectedValue="" End If liexz.CheckOnClick=True Dim dtshb As WinForm.Table = e.Form.Controls("Table1") For Each c As Col In t.Table.Cols If t.Table.DataTable.Name ="客户资料" Then If _UserGroup = "数据操作员" Then If c.name <> "身份证号" AndAlso c.name <> "客户主手机号" AndAlso c.name <>"第二手机号" AndAlso c.name <> "第三手机号" Then str &= c.Name & "(" & c.Caption & ")|" End If ElseIf _UserGroup = "系统管理员" OrElse _UserGroup = "数据管理员" If c.name <>"身份证号掩码显示" AndAlso c.name <> "客户主手机号掩码显示" AndAlso c.name <> "第二手机号掩码显示" AndAlso c.name <> "第三手机号掩码显示" Then str &= c.Name & "(" & c.Caption & ")|" End If End If Else str &= c.Name & "(" & c.Caption & ")|" End If Next e.Form.Controls("lieCheckedListBox").ComboList = str.Trim("|") \'Dim clist As WinForm.CheckedListBox = e.Form.Controls("lieCheckedListBox") For Each c As Col In t.Table.Cols If t.Table.DataTable.Name ="客户资料" Then If _UserGroup = "数据操作员" Then If c.name <> "身份证号" AndAlso c.name <> "客户主手机号" AndAlso c.name <>"第二手机号" AndAlso c.name <> "第三手机号" Then liexz .SetItemChecked(c.Index, not c.Visible) End If ElseIf _UserGroup = "系统管理员" OrElse _UserGroup = "数据管理员" If c.name <>"身份证号掩码显示" AndAlso c.name <> "客户主手机号掩码显示" AndAlso c.name <> "第二手机号掩码显示" AndAlso c.name <> "第三手机号掩码显示" Then liexz .SetItemChecked(c.Index, not c.Visible) End If End If Else liexz .SetItemChecked(c.Index, not c.Visible) End If Next 如果操作的表是“客户资料"就会错误的 操作“客户资料”表时,重新打开后除了那几个列外所有的隐藏列都加上了,按“全选按钮”后隐藏列时,有两个列不隐藏,不知道什么原因 其他表都正常 [此贴子已经被作者于2019/3/20 9:10:08编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/3/20 9:26:00 -- 上传对应的实例测试 |
||||
-- 作者:裴保民 -- 发布时间:2019/3/20 15:21:00 -- (1)进去后选择“客户资料窗体”在选择用户类别组合框选择用户类别“数据操作员”后 ,单击设置列按钮; (2)交替选择"设置列宽度与顺序"和“显示与隐藏列”就会弹出错误提示框如下 (3)我想实现当不同用户类别时,电话1、电话2、电话3、电话4、电话5、电话6 在列表框中显示或不显示 当选择“数据操作员”时电话1、电话2、电话3在列表框中不显示,只在列表框中显示电话4、电话5、电话6列 当选择“数据管理员和系统管理员”时电话4、电话5、电话6在列表框中不显示,只在列表框中显示电话1、电话2、电话3列
[此贴子已经被作者于2019/3/20 15:23:13编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2019/3/20 15:46:00 -- Dim xsyyc As WinForm.RadioButton = e.Form.Controls("xianshiyuyincanglie")
|