Foxtable(狐表)用户栏目专家坐堂 → [求助]遍历控件 返回控件名称的顺序问题


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

主题:[求助]遍历控件 返回控件名称的顺序问题

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
[求助]遍历控件 返回控件名称的顺序问题  发帖心情 Post By:2015/11/30 13:35:00 [显示全部帖子]

老师,
   遍历控件 返回控件名称的顺序是什么顺序?

问题是这样的 遍历过程中 如出现为空的控件 背景颜色为红色;

假设全部为空,执行代码发现,提示红色控件的顺序混乱;

问下是什么顺序,怎么样能排好顺序?

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 14:44:00 [显示全部帖子]

是不是这个意思

01_BTN....
02_BTN....

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 18:11:00 [显示全部帖子]

老师,
    BeforeClose
下列代码有时候不好使,有时候好使,窗口直接关闭了,为什么呢?

If Tables("备份计划").Current.DataRow.RowState = DataRowState.Unchanged Then'非空变动的行
    Dim Result As DialogResult=MessageBox.Show("是否保存并退出?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        For Each bt As WinForm.Control In e.Form.Controls
            Dim Index As Integer=bt.Name.LastIndexOf("_")
            If bt.Name.Contains("_UN_") AndAlso e.Form.Controls(bt.Name).text="" Then
                bt.BackColor=Color.Red
                MessageBox.Show("存在空数据!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
                Exit For
            
            End If
        Next
        e.Cancel=True
    Else
        Tables("备份计划").Current.Delete
        Tables("A备份计划").save
    End If
End If

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 21:13:00 [显示全部帖子]

老师 ,
  我原来也是这么写的,发到网上,删除了一部分,还是不对,您再给看看,这么简单的代码,我都搞不定了,我也是醉了。
[upload=rar,管理项目1.rar]viewFile.asp?ID=73518[/uploa]

[此贴子已经被作者于2015/11/30 21:29:51编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 21:30:00 [显示全部帖子]

For Each bt As object In e.Form.Controls

老师 这是什么意思 重来没这么用过 跪求老师指点迷津!

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 22:24:00 [显示全部帖子]

老师,
  为何 到我的系统里 不执行这部分呢
If Result = DialogResult.Yes Then
        For Each bt As object In e.Form.Controls
            If bt.Name.Contains("_un_") AndAlso bt.text="" Then
MessageBox.Show(bt.Name)  未见弹窗
                bt.BackColor=Color.Red
                MessageBox.Show("存在空数据!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
                e.Cancel=True
                bt.Select
                Exit For
            Else
                bt.BackColor=Color.White
            End If
        Next


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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 22:25:00 [显示全部帖子]


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

未见弹窗 提示 就直接关闭了

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 22:36:00 [显示全部帖子]

O 解决了 刚才 改过大写 难道没保存 

老师 ,
   要是数据框 还有时间类型的框 用 Object代码 怎么写 
[此贴子已经被作者于2015/11/30 22:37:24编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 23:11:00 [显示全部帖子]

是这么写吧,老师


For Each bt As object In e.Form.Controls

    If Typeof bt Is WinForm.DateTimePicker AndAlso bt.Value=Nothing Then '判断控件非文本框

        bt.BackColor=Color.Red

        MessageBox.Show("存在空格数据!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)

        e.Cancel=True

        bt.Select

        Exit For

    Else

        If bt.BackColor=Color.Red Then

            bt.BackColor=Color.White

        End If

    End If

Next



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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/11/30 23:16:00 [显示全部帖子]

好的 谢谢 我在改改

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