PaintPicture

用以在Form, PictureBox 或 Printer 上繪製圖形檔案(.bmp、.wmf、.emf、.cur、.ico或 .dib)的內容。不支持命名參數。

語法,說明,

語法

object.PaintPicturepicture, x1, y1, width1, height1, x2, y2, width2, height2, opcode
PaintPicture 方法的語法包含下列部分:
部分
描述
object
可選的。一個對象表達式,其值為“套用於”列表中的一個對象。如果省略 object,帶有焦點的 Form 對象預設為 object。
Picture
必需的。要繪製到 object 上的圖形源。Form 或PictureBox 必須是 Picture 屬性。
x1, y1
必需的。均為單精度值,指定在 object 上繪製 picture 的目標坐標(x-軸和y-軸)。object 的ScaleMode 屬性決定使用的度量單位。
Width1
可選的。單精度值,指示 picture 的目標寬度。object 的ScaleMode 屬性決定使用的度量單位。如果目標寬度比源寬度 (width2) 大或小,將適當地拉伸或壓縮 picture。如果該參數省略,則使用源寬度。
Height1
可選的。 單精度值,指示 picture 的目標高度。object 的ScaleMode 屬性決定使用的度量單位。如果目標高度比源高度 (height2) 大或小,將適當地拉伸或壓縮 picture。如果該參數省略,則使用源高度。
x2, y2
可選的。均為單精度值,指示 picture 內剪貼區的坐標(x-軸和y-軸)。object 的ScaleMode 屬性決定使用的度量單位。如果該參數省略,則預設為 0。
Width2
可選的。單精度值,指示 picture 內剪貼區的源寬度。object 的ScaleMode 屬性決定使用的度量單位。如果該參數省略,則使用整個源寬度。
Height2
可選的。 單精度值,指示 picture 內剪貼區的源高度。object 的ScaleMode 屬性決定使用的度量單位。如果該參數省略,則使用整個源高度。
Opcode
可選的。是長型值或僅由點陣圖使用的代碼。它用來定義在將 pictur 繪製到 object 上時對 picture 執行的位操作(例如,vbMergeCopy 或 vbSrcAnd 操作符)。關於位操作符常數的完整列表,請參閱 Visual Basic Help 檔案中的 RasterOp Constants 主題。 在使用opcode時有一些限制。例如,如果資源是圖示或圖元檔案,則只能使用 vbSrcCopy,而不能使用其他的opcode;並且,與圖案 (或 SDK 術語中的"畫筆"),如 MERGECOPY、 PATCOPY、 PATPAINT 和 PATINVERT,相互動的opcode實際上是同目標的FillStyle 屬性互動。
注意 Opcode 用於將按位操作傳遞到點陣圖。當傳遞其他圖象類型時將一個值給該參數會造成“無效過程調用或參數”錯誤。這是設計的原因。要避免這個錯誤,對於除點陣圖外的圖象,將Opcode 參數置為空。

說明

通過使用負的目標高度值 (height1) 和 / 或目標寬度值 (width1) ,可以水平或垂直翻轉點陣圖。
可以省略任何多個可選的尾部的參數 。如果省略了一個或多個可選尾部參數,則不能在指定的最後一個參數後面使用逗號。如果想指定某個可選參數,則必須先指定語法中出現在該參數前面的全部參數。
注意,在將一個.Bmp載入入 PictureBox 控制項和使用Windows API 函式 BitBlt() 添加圖片之間有一點不同。當您對一個圖象使用 BitBlt() 時,PictureBox 控制項不知道象您使用 LoadPicture方法那樣去調整大小。將ScaleWidth 和 ScaleHeight 屬性設定為圖象的大小也不起作用。如果您想在使用 BitBlt 之後用 PictureBox 調整新圖片的大小,必須用代碼手工做,轉換單位並處理框線,下面是如何這樣做的一個簡單示例:
Sub ResizePictureBoxToImage(pic As PictureBox, twipWd As Integer, twipHt As Integer)  ' 該代碼假設所有的單位都為緹。如果  ' 不是,必須在調用該例程之前,轉換為緹。  ' 這裡也假設圖象顯示在0,0處。  Dim BorderHt As Integer, BorderWd As Integer  BorderWd = pic.Width - pic.ScaleWidth  BorderHt = pic.Height - pic.ScaleHeight  pic.Move pic.Left, pic.Top, twipWd + BorderWd, twipHt + BorderHtEnd Sub

相關詞條

熱門詞條

聯絡我們