⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.frm

📁 很好的教程原代码!
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Main 
   Caption         =   "用指定的颜色填充封闭区域"
   ClientHeight    =   4845
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   4920
   LinkTopic       =   "Form1"
   Picture         =   "Main.frx":0000
   ScaleHeight     =   323
   ScaleMode       =   3  'Pixel
   ScaleWidth      =   328
   StartUpPosition =   3  '窗口缺省
   Begin VB.ComboBox Combo1 
      Height          =   300
      ItemData        =   "Main.frx":37A2
      Left            =   3480
      List            =   "Main.frx":37B2
      TabIndex        =   0
      Text            =   "红色"
      Top             =   240
      Width           =   1095
   End
   Begin VB.Label Label1 
      AutoSize        =   -1  'True
      BackStyle       =   0  'Transparent
      Caption         =   "填满颜色"
      Height          =   180
      Left            =   2640
      TabIndex        =   1
      Top             =   240
      Width           =   720
   End
End
Attribute VB_Name = "Main"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Declare Function CreateSolidBrush Lib "gdi32" _
    (ByVal crColor As Long) As Long
Private Declare Function SelectObject Lib "gdi32" _
    (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" _
    (ByVal hObject As Long) As Long
Private Declare Function FloodFill Lib "gdi32" _
    (ByVal hdc As Long, ByVal X As Long, ByVal Y _
    As Long, ByVal crColor As Long) As Long
    
Dim Color(0 To 3) As Long

Private Sub Form_Load()
    Color(0) = RGB(255, 0, 0)
    Color(1) = RGB(0, 255, 0)
    Color(2) = RGB(0, 0, 255)
    Color(3) = RGB(255, 255, 0)
    Combo1.ListIndex = 0
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Dim hBrush As Long, hOldBrush As Long
    ' 定义画刷
    hBrush = CreateSolidBrush(Color(Combo1.ListIndex))
    ' 选择画刷
    hOldBrush = SelectObject(Me.hdc, hBrush)
    ' 填充颜色
    FloodFill Me.hdc, X, Y, RGB(0, 0, 0)
    ' 恢复画刷
    SelectObject Me.hdc, hOldBrush
    DeleteObject hBrush
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -