投稿時間:2007/06/04(Mon) 14:23 投稿者名:なな
Eメール:
URL :
タイトル:楕円が選択されるとフォーカスを当てたい
お世話になります。
VB歴3年のPGです。 環境:VB6(SP5) WinXp
PictureBox上に楕円を描いています。描いた楕円上を選択している場合、フォーカスを当てる処理を行いたいです。
やりたい事は、Excel上で絵を描いたときのイメージと同じ感じです。 @までは、Vbで作成済みですが、Aの処理で悩んでいます。
@オートシェープの楕円を選び、楕円を描きます。 A楕円上が選択されている場合、フォーカスが当たって(○でを8箇所で囲んでいる)います。 ※実際に試す時は、@の後にオートシェープの書式設定で、色を「塗りつぶしなし」を選びます。
「特に、楕円が選択されているか?」という判定をどのように行えば良いか分かりません。 @の楕円を描く処理は、以下の通りです。 -------------------------------------------------------- Dim UpX1 As Long Dim UpX2 As Long Dim UpY1 As Long Dim UpY2 As Long
Dim UpX3 As Long Dim UpY3 As Long
Dim booFlg As Boolean
Private Sub Form_Load() Picture1.ScaleMode = 3 End Sub Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) booFlg = True UpX1 = X UpY1 = Y End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If booFlg = True Then UpX3 = X UpY3 = Y Picture1.Refresh Ellipse Picture1.hDC, UpX1, UpY1, UpX3, UpY3
End If End Sub
Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) UpX2 = X UpY2 = Y If booFlg = True Then Picture1.Refresh Ellipse Picture1.hDC, UpX1, UpY1, UpX2, UpY2 booFlg = False End If
End Sub
'楕円を描画するAPI Declare Function Ellipse Lib "gdi32" ( _ ByVal hDC As Long, _ ByVal Left As Long, _ ByVal Top As Long, _ ByVal Right As Long, _ ByVal Bottom As Long) As Long
|