タイトル | : ピクチャーボックスの描画について |
記事No | : 13503 |
投稿日 | : 2009/03/11(Wed) 17:10 |
投稿者 | : 慶次 |
VB暦2ヶ月PGの卵です。WinXP VB6.0(SP5)を利用しています。 ピクチャーボックスを1つ貼り付けて、以下のコードを記述しました。
Option Explicit Dim sPosX As Single Dim sPosY As Single Dim ePosX As Single Dim ePosY As Single
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) If (Button And vbLeftButton) <> 0 Then sPosX = X sPosY = 0 ePosX = X ePosY = 2000 End If End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, _ X As Single, Y As Single) If (Button And vbLeftButton) <> 0 Then Picture1.DrawStyle = 0 Picture1.Cls Picture1.FillStyle = 4 Picture1.Line (sPosX, sPosY)-(ePosX, ePosY), vbBlue, B ePosX = X ePosY = 2000 End If End Sub
Private Sub Picture1_Paint()
With Picture1 .ScaleHeight = 3000 .ScaleWidth = 6000 End With Picture1.Line (0, 0)-(1000, 1000), , BF End Sub
この時、Paintイベントの「Picture1.Line (0,0)-(1000,1000), , BF」で 黒く塗りつぶされた四角形を消さずにMouseMoveイベントで、斜線を描画 したいと考えております。 問題がある箇所は、MouseMoveイベントの「Picture1.Cls」が問題なのですが、 四角形を消さずに斜線を描画出来る良い案はないでしょうか? ピクチャーボックスを2つ重ればと考えましたが、重ねると四角形が隠れて しまいます。また、重ねたピクチャーボックスを透明に設定する様なプロパティ も存在しない為、上手くいきません。何卒宜しくお願い致します。
|