以下是引用dzdoc在2005-6-24 21:29:37的发言:
第一方案,向老大求解Set aControls = Me.Controls.Add("Forms.Label.1", , True)
中的“("Forms.Label.1" )的意义是什么?运行时我并未看到有图片出现在窗体中。还有这样的方法能否支持PNG格式图片?
第二方案按以下广语句
Options.DefaultFilePath(Path:=wdPicturesPath) = "C:\Documents andSettings\My Documents\My Pictures\"
Dialogs(wdDialogInsertPicture).Show
基本解决,但窗口上面的地址栏、向上按钮、查看按钮等没法去掉。
期望守大侠再指导。
第一个问题,其实楼主应该发挥主观能动性,既然守柔都已经把代码完成了,你难道查一下帮助不行吗?我已经说了,这是一个运行时间创建控件的方法,是什么控件呢,在示例中,是LABEL(标签框)控件,"Forms.Label.1"就是标签框控件的程序设计标识符 (ProgID) ,VBA以此来创建该对象.
至于你说没有出现图片,那是你没有改变路径,你改一个有图片的路径嘛,对不对?
'定义一个文件夹位置,请在此修改路径
MyPictureFolderPath = "C:\Documents and Settings\My Documents\My Pictures\"
这不是在代码中已经写得很清楚了吗?
至于需要使用其它形式的图片格式,你可以在DIR中修改:Apic = Dir("*.bmp"),这是任意BMP文件,当然你可以改为"*.GIF",但你得注意,LABEL的PICTRUE方法是否支持.
关于" 基本解决,但窗口上面的地址栏、向上按钮、查看按钮等没法去掉。"这个问题,我本不想多说什么,我目前没有能力对APPLICATION.DIALOGS(**)进行改造,我想,目前也没有人对此能进行改造,至少我可能孤陋寡闻了.我说了,是变通的方法,我们的目的,是不让用户介入其它路径的图片向指定的文档插入图片,而不是要禁止所有的OFFICE深层对话框,我想,dzdoc你不会连WINDOWS的复制粘贴都想禁了吧,为什么?因为用户可以通查找任意图片向文档粘贴吧,这我可不行了,我闪,请另请高明;关于图片格式问题,其实,我们直接可以使用APPLICATION.FILEDIALOG对象,通过文件筛选器,取得指定的文件对象,然后根据返回的地址,向文档中插入图片.(有关APPLICAITON.FILEDIALOG对象的应用,在代码集中有)
归根结底,VBA是面向对象的一个编程语言,用户在使用它完成指定工作时,要考虑对象的实际情况,不能一昧追求外观而忽视实现价值,也许使用API可以更改这个对话框,然而,你又有多大意义呢?也许你可以实现,但你耗费的精力远大于整个程序的其它时间,有必要吗?(能不能做是一回事,做成的对于VBA程序的有效性是一回事,当然,我不会做)
此话题,我到此为止. |