Option Strict Off
Option Explicit On
Imports System.Windows.Forms
'------------------------------------ 2023/11/09 ------------------------------------
Public Class frmDlgカード型カレント選択

#Region "宣言"
    '**************************************************************************************************************************************
    Event ウインドウの初期化データーをください(ByRef wIsOK As Boolean, ByRef wMe_gmDlgID As Integer, ByRef wダイアログテキスト As String, ByRef w使用目的メッセージ As String, ByRef wタテ個数 As Integer, ByRef w使用個数_0_to_max As Integer, ByRef wアプリ型_max As Integer, _
                ByRef wセル幅 As Integer, ByRef wセル高 As Integer, ByRef wCell間タテヨコ As Integer, ByRef w図形外縁枠幅 As Integer, ByRef w図形外縁枠色 As Integer, ByRef wリスト背景色 As Integer, ByRef w選択色 As Integer)
    Event カードデーターをください(ByRef wIsOK As Boolean, ByVal rカード型IDX As Integer, ByVal rセル幅 As Integer, ByVal rセル高 As Integer, ByRef wカードRGN_呼び出し元で削除する As Integer, ByRef wカードを使用している As Boolean)
    '**************************************************************************************************************************************
    Private mMe_gmDlgID As Integer = 0
    Private mアプリ型_max As Integer = 0
    '**************************************************************************************************************************************
    Private WithEvents イベントgAppEventMaker As 五clsEventMaker
    '**************************************************************************************************************************************
    '***************************************************
    Private WithEvents m口口口 As 五clsCellListBox
    '***************************************************
#End Region

#Region "メニュー型ウインドウの表示"

    Private Sub frmDlgカード型カレント選択_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim wIsOK As Boolean, wMe_gmDlgID As Integer, wダイアログテキスト As String = "", w使用目的メッセージ As String = "", wタテ個数 As Integer, w使用個数_0_to_max As Integer, wアプリ型_max As Integer
        Dim rwセル幅 As Integer, rwセル高 As Integer, rwCell間タテヨコ As Integer, rw図形外縁枠幅 As Integer, w図形外縁枠色 As Integer, wリスト背景色 As Integer, w選択色 As Integer
        wIsOK = False
        RaiseEvent ウインドウの初期化データーをください(wIsOK, wMe_gmDlgID, wダイアログテキスト, w使用目的メッセージ, wタテ個数, w使用個数_0_to_max, wアプリ型_max, rwセル幅, rwセル高, rwCell間タテヨコ, rw図形外縁枠幅, w図形外縁枠色, wリスト背景色, w選択色)
        '---------------------------------------------------
        If wIsOK = False Then GoTo EXIT_ON_ERROR
        If wタテ個数 < 1 Or w使用個数_0_to_max < 1 Or wタテ個数 > 20 Or w使用個数_0_to_max > 400 Then GoTo EXIT_ON_ERROR
        If rwセル幅 < 20 Or rwセル高 < 20 Or rwセル幅 > 400 Or rwセル高 > 400 Then GoTo EXIT_ON_ERROR
        '***************************************************
        イベントgAppEventMaker = gAppEventMaker
        '---------------------------------------------------
        mMe_gmDlgID = wMe_gmDlgID
        mアプリ型_max = wアプリ型_max
        '---------------------------------------------------
        Me.Owner = frmMain
        Dim MeOwner As Form = Me.Owner
        If MeOwner IsNot Nothing Then
            If MeOwner.Icon IsNot Nothing Then Me.Icon = MeOwner.Icon
        End If
        '***************************************************
        m口口口 = New 五clsCellListBox
        Dim 口口口width As Integer, 口口口height As Integer
        Dim 口口口left As Integer = 0, 口口口top As Integer = 0
        Dim 使用個数 = (w使用個数_0_to_max + 1)
        Dim ヨコ個数 = (使用個数 \ wタテ個数) + IIf(使用個数 Mod wタテ個数 = 0, 0, 1)
        Dim rMouseChkInSide_0_to_03 As Single = 0.05
        gggbol = m口口口.セルリスト作成と初期化(Me, BorderStyle.None, True, ヨコ個数, wタテ個数, 使用個数, rw図形外縁枠幅, rwセル幅, rwセル高, rwCell間タテヨコ, rMouseChkInSide_0_to_03, wリスト背景色, w選択色, w図形外縁枠色, 口口口left, 口口口top, 口口口width, 口口口height)
        '***************************************************
        Dim www As Integer = 口口口width + Me.Width - Me.ClientSize.Width
        Dim hhh As Integer = (口口口top + 口口口height) + Me.Height - Me.ClientSize.Height
        Dim nPoint As POINTAPI
        gggint = GetCursorPos(nPoint)
        Dim xxx As Integer = nPoint.X - www \ 2
        Dim yyy As Integer = nPoint.Y - hhh \ 2
        Me.SetBounds(xxx, yyy, www, hhh)
        gggint = ⅩFormMove(gcoフォームをスクリーン内に移動, Me)
        Dim wh As Integer = 50
        btnキャンセル.SetBounds(口口口width - wh, 口口口height - wh, wh, wh)
        '***************************************************
        gggbol = m口口口.aaCardDrawAll(False)
        gggbol = m口口口.セルの選択状態COPY_OldToNew1_NewToOld2(0, True, 1)
        '--------------------------------------------------
        gggbol = イベントgAppEventMaker.MakeEventフォームの表示消去(mMe_gmDlgID, True)
        '--------------------------------------------------
        Return
        '---------------------------------------------------
EXIT_ON_ERROR:
        Call ⅩMsgBox_OK_情報(Me.Name & "_Load() 内でエラーが発生しました。")
        Me.Close()
    End Sub
#End Region

#Region "ウインドウ　イベント　と　後処理"

    Private Sub frmDlgカード型カレント選択_Deactivate(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Deactivate
        Me.Close()
    End Sub

    Private Sub btnキャンセル_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnキャンセル.Click
        Me.Close()
    End Sub

    Private Sub frmDlgカード型カレント選択_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        gggbol = イベントgAppEventMaker.MakeEventフォームの表示消去(mMe_gmDlgID, False)
    End Sub

#End Region

#Region "イベント from m口口口"

    Private Sub m口口口_カードデーターをください(ByRef wIsOK As Boolean, ByVal rカード型IDX As Integer, ByVal rセル幅 As Integer, ByVal rセル高 As Integer, ByRef wカードRGN_呼び出し元で削除する As Integer, ByRef wカードを使用している As Boolean) Handles m口口口.カードデーターをください
        RaiseEvent カードデーターをください(wIsOK, rカード型IDX, rセル幅, rセル高, wカードRGN_呼び出し元で削除する, wカードを使用している)
    End Sub
    Private Sub m口口口_選択インデックスが変わりました(ByVal rIndex As Integer) Handles m口口口.選択インデックスが変わりました
        If rIndex >= 0 Then
            With gmアプリ固有クラス
                gggstr = .pゲームカード型_使用変更_追加(rIndex)
                .pゲームカード型使用中の現在のIDX = rIndex
                gggbol = .aaカードの配置と再描画(3, 1, False)
                .pゲームカード型の切り替え_カレントカウント = 0
            End With
            Me.Close()
        End If
        'qqqqq("m口口口_選択インデックスが変わりました  " & CStr(rIndex))
    End Sub

#End Region

End Class