求高手解释代码,只有10多行(ljl的代码)

来源:百度知道 编辑:UC知道 时间:2024/05/27 17:05:00
刚才看到一位高人教如何吧textbox的内容保存为图片,他的代码如下:

Private Sub Command1_Click()
'把文本内容保存为c:\111.bmp
Dim ctlNew As Control
Set ctlNew = Me.Controls.Add("VB.PictureBox", "picNew", Me)'重点这句不懂,帮忙解释一下这句的语法!
ctlNew.AutoRedraw = True
ctlNew.AutoSize = True
ctlNew.Width = Text1.Width
ctlNew.Height = Text1.Height
ctlNew.BackColor = vbWhite
ctlNew.FontSize = 30'这里字体大小,我想改成"小三",该是什么数值
ctlNew.ForeColor = vbGreen
ctlNew.Print Text1.Text
ctlNew.Picture = ctlNew.Image'重点这句,picture框的image属性有啥用,去掉这句怎么不能正常保存图片呢?
SavePicture ctlNew.Picture, "c:\111.bmp"
Controls.Remove ctlNew
MsgBox "文件转换完毕!"
End Sub

再帮忙解释这段代码的设计思想,没见它在窗体上画出picturebox控件,为什么也能保存为图片!
本人菜鸟,无以为谢,100分,略表感激!

1.Set ctlNew = Me.Controls.Add("VB.PictureBox", "picNew", Me)'重点这句不懂,帮忙解释一下这句的语法!
这一句的作用是凭空创建一个控件。语法是
object.Add (ProgID, name, container)

Add 方法语法有这些部分:

部分 描述
Object 必需的。一个对象表达式,其值是“应用于”列表中的一个对象。
ProgID 必需的。一个标识控件的字符串。大多数控件的 ProgID 都可通过查看对象浏览器来决定。控件的 ProgID 是由控件的库和类组成的。例如,CommandButton 控件的 ProgID 是 VB.CommandButton。在 ProgID 与对象浏览器中所显示的不一样的情况下,Visual Basic 将显示一个包括正确 ProgId 的错误信息。
name 必要的。一个字符串,用来标识集合的成员。
container 可选的。一个对象引用,它指定控件的容器。如果没有指定或为 NULL,缺省值为 Controls 集合所属的容器。通过指定该参数,可以把一个控件放置在任何现存的容器控件(如 Frame 控件)中。用户控件或 ActiveX 文档也可以作为一个容器。
LJL的代码作用就是创建一个PictureBox。再举一个例子,创建一个CommandButton,可以这样:
Controls.Add "vb.commandbutton", "cmd1"
Form1!cmd1.Visible = True
2.小三——15.
3.使用PictureBox的Print方法后,他的Picture属性仍旧为空,而Image属性已经刷新,所以要重新赋值。不这样的话,下面的也可行:
SavePicture ctlNew.Image, "c:\111.bmp"

这段代码的设计思想是:利用动态创建的一个临时picturebox控件进行文字输出,然后再保存文本为图片文件。