带有文本的图片按钮

时间:2014-03-07 14:20:39

标签: vb.net visual-studio-2010 button

我最近开始在Visual Studio 2010中学习VB.Net作为辅助项目,但我已经完全陷入困境。 我想做的只是画一幅画,然后在它上面画文字。

这是我到目前为止的代码......

Dim allFolders As String() = Directory.GetDirectories("C:\Project\Test")
For Each item As String In allFolders
        Dim newButton As New Button
        newButton.Name = item
        newButton.Width = folderW
        newButton.Width = folderH
        newButton.Left = folderX
        newButton.Top = folderY
        newButton.Image = My.Resources.Resources.grBtn
        newButton.Text = newButton.Name.Remove(0, 17)
        Me.Controls.Add(newButton)
        AddHandler newButton.Click, AddressOf openMyFolder
        folderX += folderXS
Next

如果我将“Dim newButton设为新按钮”,则它会完全忽略图像并仅绘制标准按钮...如果我将“Dim newButton设置为新图片框”,则它会完全忽略文本并仅绘制图像。 ..

当然,我可以通过某种方式获得图片和文字吗?

感谢您的时间!

谢谢LarsTech!任何搜索类似问题的人,我正在使用的代码是:

        Dim newButton As New Button
        newButton.Name = item
        newButton.Width = folderW
        newButton.Height = folderH
        newButton.Left = folderX
        newButton.Top = folderY
        newButton.Image = My.Resources.Resources.<Your Image Resource>
        newButton.FlatStyle = FlatStyle.Flat
        newButton.FlatAppearance.BorderSize = 0
        newButton.Text = newButton.Name.Remove(0, 17)
        Me.Controls.Add(newButton)
        AddHandler newButton.Click, AddressOf openMyFolder
        folderX += folderXS

这将创建漂亮,动态的图片按钮,没有寄宿生。

1 个答案:

答案 0 :(得分:3)

无法完全复制您的问题,但您没有设置高度属性(您有两次宽度)。

考虑添加以下属性以正确显示图像:

newButton.ImageAlign = ContentAlignment.MiddleCenter
newButton.TextAlign = ContentAlignment.MiddleCenter
newButton.TextImageRelation = TextImageRelation.ImageBeforeText