Foxtable(狐表)用户栏目专家坐堂 → 重新编辑的单元格自动标记红色字体


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

主题:重新编辑的单元格自动标记红色字体

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
重新编辑的单元格自动标记红色字体  发帖心情 Post By:2018/8/17 15:30:00 [显示全部帖子]

通过下拉列表选择自动填充的列,属性为可编辑,想通过代码设置,自动填充的列经进入单元格手工重新编辑后,会自动标记为红色字体并能保存的。如果是通过下拉列表重新自动填充列,则不标记红色。请问老师,能实现吗,怎么写代码,写在哪里?

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/17 17:07:00 [显示全部帖子]

我就是不会做才向老师请教的?

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/17 18:00:00 [显示全部帖子]

通过如图下拉列表填充,

图片点击可在新窗口打开查看此主题相关图片如下:111111.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/17 18:09:00 [显示全部帖子]

比如上图中,我先后“青菜类”,如果选择完以后,我进入“青菜类”单元格进行重新编辑为“萝卜”,那么“萝卜”以红色字体标示,如果重新通过下拉列表进行选择,如选择“高粱”,则不会标示红色字体。

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/9/13 11:56:00 [显示全部帖子]

各位老师,这个真没办法了吗

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/9/13 16:11:00 [显示全部帖子]

老师,我现在有一个“名称”列和一个“记录”列,当“名称”列通过下拉目录树选择数据时,在“记录”列生成【通过目录树填充】,当“名称”列数据人工进行修改时,则“记录”列生成【人工修改】。请问老师该怎么写代码,写在哪个事件下

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/9/13 18:06:00 [显示全部帖子]

老师我在项目的CurrentTableChanged事件写以下代码

For Each t As Table In Tables
        If t.Name Like "*S明细杆管*" Then
            Dim tb As New DropTreeBuilder
            tb.SourceTable = DataTables("S杆管补偿标准") '指定目录树表
            tb.TreeCols = "县|类别|杆线管线类型" '指定用于生成目录树的列
            tb.SourceCols = "杆线管线类型|单位|政府补偿标准|业主补偿标准" '指定数据来源列
            tb.ReceiveCols = "杆管线类型|单位|政府补偿标准|业主补偿标准" '指定数据接收列
            tb.TreeWidth = 300 '指目录树宽度
            t.Cols("杆管线类型").DropTree = tb.Build()
        End If
    Next

老师你提供的代码vars("目录树") = true中的“目录树”是表名还是列名,对应我上面代码的哪一个

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/9/13 21:10:00 [显示全部帖子]

老师,我按照帮助文件里“自行设计下拉目录树”的一、三步骤做了一个下拉窗口,因直接在窗口中的关联表中使用,所以不设计第二步,但是生成目录窗口中的数据不能选入,请问老师,有什么问题?

设计步骤

一、设计下拉窗口

1、新建一个窗口,名为“窗口1”,窗口类型设置为“DropDownForm”。

2、窗口中插入一个TreeView(目录树)控件。

3、窗口的AfterLoad事件设置为:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv
.BuildTree("行政区域","省市|县市")

4、将刷新目录树按钮的代码设置为:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv
.BuildTree("行政区域","省市|县市")

5、TreeView(目录树)的NodeMouseClick事件代码设置为:

If e.Node.Level = 1 Then '如果单击的是第二层节点
    Dim tr As Row = Tables("客户").Current
    Dim dr As DataRow = e.Node.DataRow '获取生成此节点的DataRow
    tr("省市") = dr("省市")
    tr("县市") = dr("县市")
    tr("区号") = dr("区号")
    tr("邮编") = dr("邮编")
    e.Form.DropDownBox.Value = tr("县市"'这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.
|
    e.Form.DropDownBox.CloseDropdown()

End
 If

二、设计录入窗口

1、新建一个窗口,名为“窗口2”,窗口类型为“独立”。

2、插入几个输入框,分别绑定到各字段,其中县市列输入框是DropDownBox,其余各列是TextBox。

2、选择县市输入框,将其下拉窗口设置为“窗口1”:

三、在项目事件AfterOpenProject加入代码:

Tables("客户").Cols("县市").DropForm = "窗口1" '客户表的县市列也采用我们设计的下拉窗口输入数据。



图片点击可在新窗口打开查看此主题相关图片如下:1111.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/9/13 21:33:00 [显示全部帖子]

按以下设,还是不行
TreeView(目录树)的NodeMouseClick事件代码设置为:
If e.Node.Level = 1 Then '如果单击的是第二层节点
    Dim tr As Row
    Dim dr As DataRow = e.Node.DataRow '获取生成此节点的DataRow
    If e.Form.DropTable IsNot Nothing Then '如果下拉窗口是从表中打开
        tr = e.Form.DropTable.Current '获取此表的当前行
    Else '如果下拉窗口是通过DropdownBox打开
        Dim nm As String = e.Form.DropDownBox.BindingField '获取绑定的字段
        nm = nm.Split(".")(0) '获取绑定的表名
        tr = Tables(nm).Current '获取此表的当前行
    End If
    tr("杆管线类型") = dr("杆线管线类型")
    tr("单位") = dr("单位")
    tr("政府补偿标准") = dr("政府补偿标准")
    tr("业主补偿标准") = dr("业主补偿标准")
    e.Form.DropDownBox.Value = tr("杆管线类型") '这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.
    e.Form.DropDownBox.CloseDropdown()
End If

AfterOpenProject事件代码

Tables("S迁记录杆管.S迁明细杆管").Cols("杆管线类型").DropForm = "杆管补偿标准" 

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/9/13 22:05:00 [显示全部帖子]

打开AB窗口,在子表的第二列进行下拉
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip



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