Foxtable(狐表)用户栏目专家坐堂 → 文本框变色问题


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

主题:文本框变色问题

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


加好友 发短信
等级:一尾狐 帖子:494 积分:3311 威望:0 精华:0 注册:2011/3/15 12:49:00
文本框变色问题  发帖心情 Post By:2025/1/3 14:56:00 [只看该作者]

Dim lb8 As WinForm.Label = e.Form.Controls("Label8-1")
If lb8.text <> "" Then
    Dim i As Integer
    For i = 1 To 7
        If lb8.BackColor = Color.DimGray Then
            If e.Form.Controls("Label" & i & "_1").BackColor = Color.DarkGray Then
                e.Form.Controls("Label" & i & "_1").BackColor = Color.White
                e.Form.Controls("Label" & i & "_1").ForeColor = Color.Black
            End If
            lb8.ForeColor = Color.Black
            lb8.BackColor = Color.Transparent
        ElseIf lb8.BackColor = Color.Transparent Then
            If e.Form.Controls("Label" & i & "_1").BackColor = Color.White Then
                e.Form.Controls("Label" & i & "_1").BackColor = Color.DarkGray
                e.Form.Controls("Label" & i & "_1").ForeColor = Color.DimGray
            End If
            lb8.ForeColor = Color.DarkGray
            lb8.BackColor = Color.DimGray
        End If 
    Next 
End If

图片点击可在新窗口打开查看此主题相关图片如下:提问图片.jpg
图片点击可在新窗口打开查看
为什么这样我要求的是点击"Label8-1" 后 Label" & i & "_1 全部变色



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


加好友 发短信
等级:超级版主 帖子:111567 积分:567941 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/3 15:01:00 [只看该作者]

没看懂什么意思

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


加好友 发短信
等级:一尾狐 帖子:494 积分:3311 威望:0 精华:0 注册:2011/3/15 12:49:00
  发帖心情 Post By:2025/1/3 15:04:00 [只看该作者]

当按下Label8-1后,Label8-1变色,所在的行 Label" & i & "_1变色

也就是当你按下Label8-1后,如果Label8-1的底色是透明色,那么Label8-1底色变成深灰色,字体变成浅灰色,而Label" & i & "_1不管之前是什么颜色,都会底色变成浅灰色,字体变成深灰色,反之那么Label8-1底色变成透明色,字体变成黑色,而Label" & i & "_1不管之前是什么颜色,都会底色变成白色,字体变成黑色
[此贴子已经被作者于2025/1/3 15:11:08编辑过]

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


加好友 发短信
等级:超级版主 帖子:111567 积分:567941 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/3 15:35:00 [只看该作者]

Dim lb8 As WinForm.Label = e.Form.Controls("Label8-1")
If lb8.text <> "" Then
    Dim i As Integer
    If lb8.BackColor = Color.DimGray Then
        lb8.ForeColor = Color.Black
        lb8.BackColor = Color.Transparent
        For i = 1 To 7
            e.Form.Controls("Label" & i & "_1").BackColor = Color.White
            e.Form.Controls("Label" & i & "_1").ForeColor = Color.Black
        Next 
    ElseIf lb8.BackColor = Color.Transparent Then
        lb8.ForeColor = Color.DarkGray
        lb8.BackColor = Color.DimGray
        For i = 1 To 7
            e.Form.Controls("Label" & i & "_1").BackColor = Color.DarkGray
            e.Form.Controls("Label" & i & "_1").ForeColor = Color.DimGray
        Next 
    End If 
End If 

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


加好友 发短信
等级:一尾狐 帖子:494 积分:3311 威望:0 精华:0 注册:2011/3/15 12:49:00
  发帖心情 Post By:2025/1/3 15:42:00 [只看该作者]

如何知道我有几个 e.Form.Controls("Label" & i & "_1"),,有时 e.Form.Controls("Label" & i & "_1") 的数量是不固定的

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


加好友 发短信
等级:超级版主 帖子:111567 积分:567941 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/3 15:44:00 [只看该作者]

设计时考虑把【Label8-1】名称改为【Label8-1-7】,然后通过名称取最后的数字作为数量

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


加好友 发短信
等级:一尾狐 帖子:494 积分:3311 威望:0 精华:0 注册:2011/3/15 12:49:00
  发帖心情 Post By:2025/1/3 15:46:00 [只看该作者]

Label8-1是固定的,Label" & i & "_1"是不固定的,但是最多也只是7

也就是图片里的1_1到7_7,不过只有少不会多
[此贴子已经被作者于2025/1/3 15:48:08编辑过]

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


加好友 发短信
等级:一尾狐 帖子:494 积分:3311 威望:0 精华:0 注册:2011/3/15 12:49:00
  发帖心情 Post By:2025/1/3 17:01:00 [只看该作者]

如何知道动态增加的Label" & i & "_1的数量有多少
[此贴子已经被作者于2025/1/3 17:02:01编辑过]

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


加好友 发短信
等级:超级版主 帖子:111567 积分:567941 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/3 17:07:00 [只看该作者]

怎么【动态增加】的?

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


加好友 发短信
等级:一尾狐 帖子:494 积分:3311 威望:0 精华:0 注册:2011/3/15 12:49:00
  发帖心情 Post By:2025/1/3 17:08:00 [只看该作者]

For j As Integer = 1 To 7
    For i As Integer = 1 To 7
'        Dim dr As String = e.Form.Controls("Ts_" & i & "_" & j).text
'        Dim dr2 As String = e.Form.Controls("Tg_" & j).text
'        Dim dr3 As String = e.Form.Controls("Tsy_" & i).text
'        If dr <> "" And dr2 <> "" And dr3 <> "" Then
            Dim lbl As WinForm.Label
            lbl = Forms("数量选择").CreateControl("Label" & i & "_" & j, ControlTypeEnum.Label)
            lbl.Height = 25
            lbl.Width = 58
            lbl.Left = 88 + 58 * (i - 1) - (i - 1)
            lbl.Top = 96 + 25 * (j - 1) - (j - 1)
            lbl.AutoSize = False
            lbl.BorderColor = Color.Black
            lbl.BackColor = Color.White
            lbl.Font = New Font("Arial Narrow", 9)
            lbl.BorderStyle = BorderStyle.FixedSingle
            lbl.TextAlign = ContentAlignment.MiddleCenter
            Forms("数量选择").AddControl(lbl)
'            lbl.Text = i & "_" & j
'            lbl.Text = e.Form.Controls("Tsy_" & i).Value
'            lbl.Text = e.Form.Controls("Tg_" & j).Value
'            lbl.Text = e.Form.Controls("Ts_" & i & "_" & j).Value
'        End If
    Next
Next

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