Foxtable(狐表)用户栏目专家坐堂 → 求助,我想在图片控件下面加入标签,这个标签的TOP位置应该怎么修改?


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

主题:求助,我想在图片控件下面加入标签,这个标签的TOP位置应该怎么修改?

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
求助,我想在图片控件下面加入标签,这个标签的TOP位置应该怎么修改?  发帖心情 Post By:2017/4/13 14:30:00 [只看该作者]

   Dim x, y, i1, i2 As Integer
        e.Form.StopRedraw()
        e.Form.Controls(Me.PanelName).ClearControl()
        e.Form.Controls(Me.PanelName).BackColor = Color.WhiteSmoke
        i2 = FileSys.GetFiles(Me.GetPath).Count
        Dim Values As New List(Of String)
        For Each File As String In FileSys.GetFiles(Me.GetPath)
            If File.Contains(".jpg") Then
                Values.Add(File)
            End If
        Next
        Dim ls_img As New List(Of Object)
        Dim Top As Integer = 0
        Dim phx As WinForm.PictureBox
        Dim lbl As WinForm.Label
        For y = 0 To Math.Ceiling(i2 / 5) - 1
            For x = 0 To 4
                If Values.Count > i1 Then
                    phx = e.Form.CreateControl(Values(i1).Replace(".jpg", ".mp4"), ControlTypeEnum.PictureBox)
                    phx.Width = 200
                    phx.Height = 200
                    phx.Font = New Font("微软雅黑", 10)
                    phx.Left = 30 + (210 * x) + 30
                    phx.Top = 2 + (210 * y) + 30
                    phx.BackColor = Color.Transparent
                    phx.Image = GetImage(Values(i1))
                    phx.AutoScroll = False
                    e.Form.Controls(Me.PanelName).AddControl(phx)
                    i1 += 1
                    lbl = e.Form.CreateControl(Values(i1).Replace(".jpg", ".mp4") & "Text", ControlTypeEnum.Label)
                    lbl.Text = FileSys.GetName(Values(i1)).Split(".")(0)
                    lbl.Font = New Font("微软雅黑", 9)
                    lbl.Width = 200
                    lbl.Height = 42
                    lbl.Left = 30 + (210 * x) + 30
                    lbl.Top = (2 + (210 * y) + 30) + (210 * y) + 30
                    lbl.AutoSize = False
                    i1 += 1
                    e.Form.Controls("Panel1").AddControl(lbl)
                End If
            Next
        Next
        e.Form.ResumeRedraw()
    End Sub

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


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

试试

lbl.Top = phx.Top + phx.Height + 30

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2017/4/13 14:54:00 [只看该作者]

不行 被底下的图片控件遮住了

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/13 15:02:00 [只看该作者]

以下是引用blackzhu在2017/4/13 14:54:00的发言:
不行 被底下的图片控件遮住了

 

你指定图片的top不正确。

 

phx.Top = 2 + (260 * y) + 30


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2017/4/13 15:05:00 [只看该作者]

我都不想骂人, 我开始写的时候就是这样写的,结果发现上下图片的大小不一致了,我就改了,没想到怎么改都不对!


难道是刚才因为电脑卡,没有显示完整?

 回到顶部