在VB,怎么样将一个图片填充picture框?

liangzhunyu 2004-11-23 11:35:40
就像photoshop里的图案填充一样。
...全文
450 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
cieon_123 2004-11-25
  • 打赏
  • 举报
回复
如果只是显示图片的话,为什么不用imagebox,picturebox更多的是用来做容器
lxcc 2004-11-24
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Picture1.Picture = LoadPicture("C:\1.gif")
End Sub
ABCatai 2004-11-24
  • 打赏
  • 举报
回复
picture不像imagebox控件,,不能自动根据picture初画的大小那样改变图片本身的大小,如果你希望让图片随着你的picture的大小的改变而自动改变我想不行,,这也是其与imagebox的区别之一吧
lxcc 2004-11-24
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Picture1.AutoSize=true
Picture1.Picture = LoadPicture("C:\1.gif")
End Sub
ygrobin 2004-11-24
  • 打赏
  • 举报
回复
up
sulizao 2004-11-24
  • 打赏
  • 举报
回复
可以用loadpicture()函数装载.也可以在图片框的属性中直接设置.
aohan 2004-11-24
  • 打赏
  • 举报
回复
如果图片很大的话,
Picture1.Width = Picture1.Picture.Width
Picture1.Height = Picture1.Picture.Height
界面可能都放不下了,^-^
loadpicture函数读取文件
wwqna 2004-11-24
  • 打赏
  • 举报
回复
真正可以和photoshop一样填充
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function CreatePatternBrush Lib "gdi32" (ByVal hBitmap As Long) As Long
Private Declare Function FillRect Lib "user32" (ByVal hdc As Long, lpRect As rect, ByVal hbrush As Long) As Long
Dim hbrush As Long
Private Type rect
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type

Private Sub Form_Load()
Dim rectForm As rect
Me.AutoRedraw = True
Picture1.Picture = LoadPicture("d:\1.bmp")
hbrush = CreatePatternBrush(Picture1.Picture)
SelectObject Me.hdc, hbrush
With rectForm
.Left = 0
.Top = 0
.Right = Me.ScaleWidth / Screen.TwipsPerPixelX
.Bottom = Me.ScaleHeight / Screen.TwipsPerPixelY
End With
FillRect Me.hdc, rectForm, hbrush
End Sub
zuoxingyu 2004-11-24
  • 打赏
  • 举报
回复
应该把AUTHSIZE属性设置成TRUE
qidaozhilong 2004-11-24
  • 打赏
  • 举报
回复
强烈建议使用imagebox,因为imagebox比picturebox占用更少的内存资源。
qidaozhilong 2004-11-24
  • 打赏
  • 举报
回复
Private Sub cmdOK_Click()
Picture1.Picture = LoadPicture(App.Path & "\" & "1.jpg")
'假设你当前目录下有一张1.jpg的图片
Picture1.Width = Picture1.Picture.Width
Picture1.Height = Picture1.Picture.Height
End Sub
你试试,是你要的效果吗?

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧