Foxtable(狐表)用户栏目专家坐堂 → [求助]控件与控件之间的关联问题


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

主题:[求助]控件与控件之间的关联问题

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
[求助]控件与控件之间的关联问题  发帖心情 Post By:2023/4/14 12:42:00 [只看该作者]

控件与控件之间可以互相控制吗?
比如控件A为ComboBox组合框在未选取列表数据时,控件B的可见属性为Flase,控件C没有绑定列表A任何列。
控件A在选取列表数据时a后,控件B的可见属性变为true,同时控件C绑定表A的第一列。
可以实现吗?如果可以实现,代码要怎么写?
[此贴子已经被作者于2023/4/14 13:04:22编辑过]

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


加好友 发短信
等级:超级版主 帖子:110334 积分:561518 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/14 13:33:00 [只看该作者]

控件A,valuechanged事件

控件B.visible = 
控件A.text > ""

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/14 14:06:00 [只看该作者]

不好意思,蓝老师,我没看懂你写的这一句控件B.visible = 控件A.text > "",自我感觉好像是比较数据的大小,不知道我判断的对不对,因为我上面说的控件A选取的列表数据是字符型的。
还有就是“同时控件C绑定表A的第一列”,也是在控件A的aluechanged事件中编写代码,是吗?代码要怎么写呢?新手学习中,还请老师多包涵。


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


加好友 发短信
等级:超级版主 帖子:110334 积分:561518 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/14 14:09:00 [只看该作者]

e.form.controls("控件B").visible = (e.sender.text > "")

看不懂可以改为这样
dim b as boolean =  (e.sender.text > "")
e.form.controls("控件B").visible =b

或者这样
if e.sender.text > "" then
e.form.controls("控件B").visible =true
else
e.form.controls("控件B").visible =false
end if

都是一样的东西,自己理解一下

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/14 14:15:00 [只看该作者]

谢谢蓝老师

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/16 11:47:00 [只看该作者]

老师,你好,还是接之前的问题
控件A为ComboBox组合框在未选取列表数据时,控件B的可见属性为Flase,控件C(日期时间型)没有绑定列表A任何列。
控件A在选取列表数据a后,控件B的可见属性变为true,同时控件C绑定表A的第一列(日期时间型)。
现在控件A和控件B之间的能实现,但是控件A和控件C之间的还是没弄成功,我想实现的是ComboBox组合框在选取不同数据时,DataTimePicker13和DataTimePicker16两个日期控件可以实现给表LOA不同的日期列录入数据。
请帮忙看一下代码,保存的时候一直显示编译错误:Property 'Item'is 'Readonly'. 错误代码: e.Form.controls("DataTimePicker13") = e.DataTable(LOA).DataRow("年休假_开始日期")
检查了我的控件没有设为只读状态,表LOA只在表属性PrepareEdit里有一段代码不能编辑表格的代码e.cancel = true
麻烦大神帮看看
Dim b As String = e.sender.text > ""
If b = "年休假" Then
    e.Form.controls("DataTimePicker13")=e.DataTable(LOA).DataRow("年休假_开始日期")
    e.Form.controls("DataTimePicker16")=e.DataTable(LOA).DataRow("年休假_结束日期")
End If
If b = "探亲假" Then
    e.Form.controls("DataTimePicker13")=e.DataTable(LOA).DataRow("探亲假_开始日期")
    e.Form.controls("DataTimePicker16")=e.DataTable(LOA).DataRow("探亲假_结束日期")
End If
If b = "婚假" Then
    e.Form.controls("DataTimePicker13")=e.DataTable(LOA).DataRow("婚假_开始日期")
    e.Form.controls("DataTimePicker16")=e.DataTable(LOA).DataRow("婚假_结束日期")
End If
If b = "产假" Then
    e.Form.controls("DataTimePicker13")=e.DataTable(LOA).DataRow("产假_开始日期")
    e.Form.controls("DataTimePicker16")=e.DataTable(LOA).DataRow("产假_结束日期")
End If
If b = "陪产假" Then
    e.Form.controls("DataTimePicker13")=e.DataTable(LOA).DataRow("陪产假_开始日期")
    e.Form.controls("DataTimePicker16")=e.DataTable(LOA).DataRow("陪产假_结束日期")
End If
If e.sender.text > "产假" Then
    e.Form.controls("CheckedComboBox1").visible = False
Else
    e.Form.controls("CheckedComboBox1").visible = True
End If
e.Form.Controls("Label48").visible = e.Form.Controls("ComboBox17").Text = "年休假"
e.Form.Controls("Label49").visible = e.Form.Controls("ComboBox17").Text = "探亲假"
e.Form.Controls("Label50").visible = e.Form.Controls("ComboBox17").Text = "婚假"
e.Form.Controls("Label51").visible = e.Form.Controls("ComboBox17").Text = "产假"
e.Form.Controls("Label52").visible = e.Form.Controls("ComboBox17").Text = "陪产假"

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


加好友 发短信
等级:超级版主 帖子:110334 积分:561518 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/16 20:17:00 [只看该作者]

建议还是多看几遍编程基础:http://www.foxtable.com/webhelp/topics/1592.htm,很多代码都不符合语法,基本都是乱用

Dim b As String = e.sender.text
e.Form.controls("DataTimePicker13")=Table("LOA").current(b & "_开始日期")
e.Form.controls("DataTimePicker16")=Table("LOA").current(b & "_结束日期")
e.Form.Controls("Label48").visible = (b = "年休假")
e.Form.Controls("Label49").visible = (b = "探亲假")
e.Form.Controls("Label50").visible = (b = "婚假")
e.Form.Controls("Label51").visible = (b = "产假")
e.Form.Controls("Label52").visible =( b = "陪产假")

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/17 10:29:00 [只看该作者]

不能使用,还是出现之前的问题,但是删除下面这两段
e.Form.controls("DataTimePicker13")=Table("LOA").current(b & "_开始日期")
e.Form.controls("DataTimePicker16")=Table("LOA").current(b & "_结束日期")
可以正常运行。

[此贴子已经被作者于2023/4/17 10:56:24编辑过]

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


加好友 发短信
等级:超级版主 帖子:110334 积分:561518 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/17 11:36:00 [只看该作者]

e.Form.controls("DataTimePicker13").value = Table("LOA").current(b & "_开始日期")

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/17 13:17:00 [只看该作者]

不能保存,Table类型出错
[此贴子已经被作者于2023/4/17 14:36:41编辑过]

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