|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
215001
註冊時間: 2003-06-11 文章: 391
第 1 樓
|
發表於: 星期五 十月 23, 2015 4:04 pm 文章主題: 將CorelDraw巨集,轉成VFP程式碼後,發生0x80020005 Type mismatch的問題 |
|
|
1.我原本在CorelDraw X5內,寫了一個巨集程式,測試是可以正常執行
2.但是我將上面的程式碼,轉成VFP的程式碼,執行時,會發生錯誤,
錯誤代號:1426 ,OLE error code 0x80020005 : Type Mismatch
3.請問 ApplyPatternFill 列,該如何改寫才會正確 ???
CorelDraw 巨集程式碼如下:
代碼: |
Sub Macro1()
Dim s1 As Shape
Set s1 = ActiveLayer.CreateRectangle(1, 5, 3, 7) '畫方框
With s1.Fill.ApplyPatternFill(2, "D:\test.jpg") '將照片套入到方框內
'略過
End With
End Sub
|
VFP 程式碼如下:
代碼: |
LOCAL xapp,s1
xapp= CreateObject("CorelDraw.Application.15")
xapp.visible=.T.
xapp.CreateDocument() && �}啟新檔
WITH xapp
s1=.ActiveLayer.CreateRectangle(1, 5, 3, 7)
WITH s1.Fill.ApplyPatternFill(2,"D:\test.jpg") && ********本列會發生1426錯誤
*
ENDWITH
ENDWITH
xapp.AppWindow.WindowState=3 && CorelDraw 視窗最大化
RELEASE xapp
|
附上 CorelDraw ApplyPatternFill 語法說明:
代碼: |
Function ApplyPatternFill(Type As cdrPatternFillType, [FileName As String], [PatternCanvasIndex As Long = 1], [FrontColor As Color], [EndColor As Color], [TransformWithShape As Boolean = False]) As PatternFill
CorelDRAW.Fill 的成員
Apply a Pattern Fill to the shape
|
|
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|