Option Strict Off
Option Explicit On
Imports System.Windows.Forms
'------------------------------------ 2024/04/18 ------------------------------------
Public Structure BtnCellDatas
    Dim mChanged As Boolean
    Dim Name As String 'nMame = K編集 / KABCD / KABCDBIG / Kひらかな / Kカタカナ / KUSER .....
    Dim rcagAll As Rectangle
    Dim Cell() As BtnCellData
    Dim NotChgCellIDX1, NotChgCellIDX2 As Integer
End Structure
Public Structure BtnCellData
    Dim text As String
    Dim rcag As Rectangle
    Dim updn As Boolean  'up=False, dn=true
    Dim CellEnabled As Boolean
    Dim CellVisible As Boolean
    Dim CellColorIdx As Integer  'mColors(1 - 10) のインデックス　　mColors(1)　はグループの色
End Structure

Public Class clsPatapata
#Region "宣言"
    Public WithEvents DlgColorSet As frmDlgColorSet = Nothing
    Public WithEvents DlgListFont As frmDlgListFont = Nothing
    Public WithEvents DlgUserBtnTextSet As frmDlgUserBtnOneSet = Nothing
    Public WithEvents DlgUserBtnTextAllSet As frmDlgUserBtnAllSet = Nothing
    Public WithEvents DlgStdBtnAllSet As frmDlgStdBtnAllSet = Nothing
    Public WithEvents DlgBtnsPosSet As frmDlgBtnsPosSet = Nothing
    '------------------------------------------------------------------------------------------------------
    Private WithEvents mMenu As ContextMenuStrip
    '------------------------------------------------------------------------------------------------------
    Private mSPRT As SplitContainer = Nothing : Private mTBOX As TextBox = Nothing
    Private mSPRTUP As SplitContainer = Nothing : Private mPCTBOX As PictureBox = Nothing
    Private mJiLISTBOX As ListBox : Private mJiKeyLbl As Label : Private mJiKeyLblinListBox As Label : Dim mbtnMENU, mJiKeyLblClear, mJiKeyLblEdit As Button, mbtnJiKanListChg As Button
    Private mKanLISTBOX As ListBox
    Private aao選択枠 As 五clsWakuwaku = Nothing
    Private aao選択枠InUserPnl As 五clsWakuwaku = Nothing
    '------------------------------------------------------------------------------------------------------
    '2024/03/19 new add
    Private mUserBoxPnlSHOW As Boolean = False
    Private mlblUSER As Label = Nothing
    Private mbtnUser As Button = Nothing
    Private mUserBoxPnl As Panel = Nothing
    Private mUserBoxLbl(15) As Label
    Private mUserBoxTxt As TextBox = Nothing

    Private mJiHisList As ListBox = Nothing
    Private mJiHisBtn As Button = Nothing

    '------------------------------------------------------------------------------------------------------
    Private WithEvents K編集 As clsButtons
    Private WithEvents KABCD As clsButtons
    Private WithEvents KABCDBIG As clsButtons
    Private WithEvents Kひらかな As clsButtons
    Private WithEvents Kカタカナ As clsButtons
    Private WithEvents K辞書漢字CHG As clsButtons
    Private WithEvents K辞書 As clsButtons
    Private WithEvents K漢字 As clsButtons
    Private WithEvents KUSER As clsButtons
    '------------------------------------------------------------------------------------------------------
    'ダイアログ　メニュー　設定文字列／コマンドキーワード
    Private Const メインウインドウstr As String = "メインウインドウ"
    Private Const メインテキストstr As String = "メインテキスト(IME_OnOff) "
    Private Const K編集str As String = "編集ボタン"
    Private Const KABCDstr As String = "ABCDボタン"
    Private Const KABCDBIGstr As String = "ＡＢＣＤボタン"
    Private Const Kひらかなstr As String = "ひらかなボタン"
    Private Const Kカタカナstr As String = "カタカナボタン"
    Private Const K辞書漢字CHGstr As String = "辞書漢字切替ボタン"
    Private Const K辞書str As String = "辞書ボタン"
    Private Const K漢字str As String = "漢字ボタン"
    Private Const KUSERstr As String = "ユーザーボタン"
    'DlgStdBtnAllSet
    Private Const cABCD半角 As String = "ABCD半角"
    Private Const cABCD全角 As String = "ABCD全角"
    Private Const cひらかな As String = "ひらかな"
    Private Const cカタカナ As String = "カタカナ"
    Private mABCD半角TextsDEF As String = ""
    Private mABCD全角TextsDEF As String = ""
    Private mひらかなTextsDEF As String = ""
    Private mカタカナTextsDEF As String = ""
    '編集キー入力モード　
    Private Const EDIME As String = "IME"
    Private Const EDRET As String = "改行"
    Private Const EDBS As String = "BS"
    Private Const EDDEL As String = "DEL"
    Private Const EDコピー As String = "Copy"
    Private Const EDクリア As String = "Clear"
    Private Const EDNext As String = "→"
    Private Const EDBack As String = "←"
    Private Const ED左右等しい As String = "○."
    Private Const ED左右ズーム As String = "←→"
    Private Const ED上下等しい As String = "○"
    Private Const ED上下ズーム As String = "↑↓"
    '------------------------------------------------------------------------------------------------------
    Private mStrボタンテキストMaxLen As String = Strings.StrConv(CStr(clsButtons.cボタンテキストMax), VbStrConv.Wide)
    Private Const c改行コード文字 As String = "▼"
    '------------------------------------------------------------------------------------------------------
    Private Structure 漢字データー
        Dim key As String
        Dim 漢字列 As String
    End Structure
    Private c漢字団KEYs As String = "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモラリルレロヤユヨワ"    '"あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもらりるれろやゆよわ"
    Private m漢字団(Len(c漢字団KEYs)) As 漢字データー
    '------------------------------------------------------------------------------------------------------
#End Region

#Region "宣言  辞書"
    Private WithEvents JISHO As clsJisho
    Private Const cJishoWIdthHi As Single = 0.25
    Private Const cJishoWIdthMin As Integer = 80
    Private Const cJishoWIdthMax As Integer = 300
    Private Const cJisho_Keys_SepWD As Integer = 5
#End Region

#Region "宣言  発行イベント"
    '------------------------------------------------------------------------------------------------------
    Event IMEChangedByBtnClick(ByVal rNewImeMode As ImeMode)
    Event BtnCharClick(ByVal rIndex As Integer, ByVal rChar As String)    'rChar の文字がボタンクリックで出力されました。
    Event BtnEditClick(ByVal rCellCaption As String)    '特別なボタン  K編集  がクリックされました。
    Event PacopacoModeChange(ByVal rNewMode As String)    '入力キーのモードがされました。    'rNewMode = 新しい入力キーモード。
    Event Resize(ByVal rNewWidth As Integer, ByVal rNewHeight As Integer)  'このコントロールのサイズが変更された直後に発生します。
    Event イベント_メインフォームのサイズメニュー_Op(ByVal op_Opening_0__Click_1 As Integer, ByVal rNewWindowState As FormWindowState, ByRef wmnuフォームサイズ最大化 As ToolStripMenuItem, ByRef wmnuフォームサイズ標準化 As ToolStripMenuItem, ByRef wmnuフォームサイズ最小化 As ToolStripMenuItem)
    Event イベント_バージョン情報_DlgShow_Click()
    Event イベント_終了_Click()
    Event ユーザーキー設定ウインドウを表示してください()
    Event メニューが表示されつつあります(ByRef wmnu色の設定 As ToolStripMenuItem, ByRef wmnuフォントの設定 As ToolStripMenuItem, ByRef wmnuユーザーキー文字の設定 As ToolStripMenuItem)
#End Region

#Region "初期化　リサイズ　firstShow()"
    Friend Function AllContObjSetDel(ByVal Set_1_Del_0 As Integer, _
                ByVal SPRT As SplitContainer, ByVal SPRTUP As SplitContainer, ByVal TBOX As TextBox, ByVal PCTBOX As PictureBox, _
                ByVal btnMENU As Button, ByVal JiKeyLblClear As Button, ByVal JiKeyLblEdit As Button, _
                ByVal JiKeyLbl As Label, ByVal JiKeyLblinListBox As Label, ByVal JiHisList As ListBox, ByVal JiHisBtn As Button, _
                ByVal JiLISTBOX As ListBox, ByVal KanLISTBOX As ListBox, ByVal btnJiKanListChg As Button) As Boolean
        Select Case Set_1_Del_0
            Case 1 'Set_1_Del_0
                If mSPRT IsNot Nothing Then Return False
                mSPRT = SPRT : mSPRTUP = SPRTUP : mTBOX = TBOX : mPCTBOX = PCTBOX : mbtnMENU = btnMENU
                mJiKeyLblClear = JiKeyLblClear : mJiKeyLblEdit = JiKeyLblEdit
                mJiKeyLbl = JiKeyLbl : mJiKeyLbl.Text = "" : mJiKeyLblinListBox = JiKeyLblinListBox : mJiKeyLblinListBox.Text = ""
                mJiHisList = JiHisList : mJiHisBtn = JiHisBtn : mJiHisList.Visible = False
                mJiLISTBOX = JiLISTBOX : mJiLISTBOX.Items.Clear() : mJiLISTBOX.Visible = False
                mKanLISTBOX = KanLISTBOX : mKanLISTBOX.Items.Clear() : mKanLISTBOX.Visible = False
                mbtnJiKanListChg = btnJiKanListChg
                mJiKeyLblinListBox.Parent = mJiLISTBOX
            Case Else 'Del
                'no op ok
        End Select
    End Function
    Friend Function AllContObjSetDelEX(ByVal Set_1_Del_0 As Integer, ByVal btnUser As Button, ByVal lblUSER As Label, ByVal UserBoxPnl As Panel, ByVal UserBoxTxt As TextBox, _
                ByVal UserBoxLbls1 As Label, ByVal UserBoxLbls2 As Label, ByVal UserBoxLbls3 As Label, _
                ByVal UserBoxLbls4 As Label, ByVal UserBoxLbls5 As Label, ByVal UserBoxLbls6 As Label, _
                ByVal UserBoxLbls7 As Label, ByVal UserBoxLbls9 As Label, _
                ByVal UserBoxLbls10 As Label, ByVal UserBoxLbls11 As Label, ByVal UserBoxLbls12 As Label, _
                ByVal UserBoxLbls13 As Label, ByVal UserBoxLbls14 As Label, ByVal UserBoxLbls15 As Label) As Boolean
        Select Case Set_1_Del_0
            Case 1 'Set_1_Del_0
                If mUserBoxPnl IsNot Nothing Then Return False
                mbtnUser = btnUser
                mlblUSER = lblUSER
                mUserBoxPnl = UserBoxPnl : mUserBoxTxt = UserBoxTxt
                mUserBoxLbl(1) = UserBoxLbls1 : mUserBoxLbl(2) = UserBoxLbls2 : mUserBoxLbl(3) = UserBoxLbls3
                mUserBoxLbl(4) = UserBoxLbls4 : mUserBoxLbl(5) = UserBoxLbls5 : mUserBoxLbl(6) = UserBoxLbls6
                mUserBoxLbl(7) = UserBoxLbls7 : mUserBoxLbl(8) = Nothing : mUserBoxLbl(9) = UserBoxLbls9
                mUserBoxLbl(10) = UserBoxLbls10 : mUserBoxLbl(11) = UserBoxLbls11 : mUserBoxLbl(12) = UserBoxLbls12
                mUserBoxLbl(13) = UserBoxLbls13 : mUserBoxLbl(14) = UserBoxLbls14 : mUserBoxLbl(15) = UserBoxLbls15
                mUserBoxPnl.Visible = False
            Case Else 'Del
                'no op ok
        End Select
    End Function

    Private Const cINIcutstr As String = "●●●●"
    Private Const cDefBtnColorStr As String = "編集ボタン:mColors(10)data□□□:1*57533*10485760*57533*10485760*:2*16711850*16711680*14680128*16711680*:3*18944*16777215*18944*16777215*:4*12648447*0*12648447*0*:5*14688384*16777215*14688384*16777215*:6*14492296*16777215*14688384*16777215*:7*16777045*11141120*16777045*11141120*:8*65535*4194304*65535*4194304*:9*12591104*16777215*12591104*16777215*:10*-1*-1*-1*-1*:mDT(20).CellColorIdx□□□:6*7*7*7*8*7*7*5*4*4*1*1*1*1*1*1*3*3*9*9*:●●●●ABCDボタン:mColors(10)data□□□:1*16769248*0*11141205*12648447*:2*16761024*0*21760*16777215*:3*14688384*16777215*14688384*16777215*:4*15053233*0*15053233*0*:5*16755370*0*21760*16777215*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*2*2*2*2*2*1*1*1*1*1*2*2*2*2*2*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*3*:●●●●ＡＢＣＤボタン:mColors(10)data□□□:1*16772792*0*11141205*16777215*:2*16767630*0*21760*16777215*:3*14688384*16777215*14688384*16777215*:4*14535799*0*21760*16777215*:5*-1*-1*-1*-1*:6*14535799*0*14535799*0*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*2*2*2*2*4*1*1*1*1*1*2*2*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*3*:●●●●ひらかなボタン:mColors(10)data□□□:1*11206655*0*11141205*16777215*:2*8501975*0*8501975*0*:3*14688384*16777215*14688384*16777215*:4*8960989*0*21760*16777215*:5*10083839*0*21760*16777215*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*4*4*4*4*4*1*1*1*1*1*4*4*4*4*4*1*1*1*5*5*5*4*4*4*4*1*1*1*5*5*5*5*4*4*3*:●●●●カタカナボタン:mColors(10)data□□□:1*13041596*0*11141205*16777215*:2*7846741*0*21760*16777215*:3*14688384*16777215*14688384*16777215*:4*7717723*0*7717723*0*:5*10092424*0*21760*16777215*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*2*2*2*2*2*1*1*1*1*1*2*2*2*2*2*1*1*1*5*5*5*5*5*2*2*1*1*1*5*5*5*5*2*2*3*:●●●●辞書漢字切替ボタン:mColors(10)data□□□:1*16416*12648447*4251808*10485760*:2*-1*-1*-1*-1*:3*-1*-1*-1*-1*:4*-1*-1*-1*-1*:5*-1*-1*-1*-1*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(2).CellColorIdx□□□:1*1*:●●●●辞書ボタン:mColors(10)data□□□:1*11206400*0*11141205*16777215*:2*-1*-1*-1*-1*:3*2293684*0*21760*16777215*:4*13893500*0*21760*16777215*:5*-1*-1*-1*-1*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(85).CellColorIdx□□□:1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*:●●●●漢字ボタン:mColors(10)data□□□:1*16777045*0*11141205*16777215*:2*11206655*0*11206655*0*:3*-1*-1*-1*-1*:4*-1*-1*-1*-1*:5*-1*-1*-1*-1*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(45).CellColorIdx□□□:1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*:●●●●ユーザーボタン:mColors(10)data□□□:1*10092492*0*11141205*16777215*:2*14688384*16777215*14688384*16777215*:3*4259839*0*4259839*0*:4*10092428*0*10092428*0*:5*8509356*0*8509356*0*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(200).CellColorIdx□□□:4*4*4*4*4*4*4*4*4*4*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*2*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*3*3*3*3*3*3*3*3*3*3*3*3*3*1*1*1*1*1*1*2*:"
    'Private Const cDefBtnColorStr As String = "編集ボタン:mColors(10)data□□□:1*57533*10485760*57533*10485760*:2*16711850*16711680*14680128*16711680*:3*18944*16777215*18944*16777215*:4*12648447*0*12648447*0*:5*14688384*16777215*14688384*16777215*:6*14492296*16777215*14688384*16777215*:7*16777045*11141120*16777045*11141120*:8*65535*4194304*65535*4194304*:9*12591104*16777215*12591104*16777215*:10*-1*-1*-1*-1*:mDT(20).CellColorIdx□□□:6*7*7*7*8*7*7*5*4*4*1*1*1*1*1*1*3*3*9*9*:●●●●ABCDボタン:mColors(10)data□□□:1*16769248*0*11141205*12648447*:2*16761024*0*21760*16777215*:3*14688384*16777215*14688384*16777215*:4*15053233*0*15053233*0*:5*16755370*0*21760*16777215*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*1*1*2*2*2*1*1*1*1*1*2*2*2*2*2*1*1*1*1*1*2*2*2*2*2*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*5*3*:●●●●ＡＢＣＤボタン:mColors(10)data□□□:1*16772792*0*11141205*16777215*:2*16767630*0*21760*16777215*:3*14688384*16777215*14688384*16777215*:4*14535799*0*21760*16777215*:5*-1*-1*-1*-1*:6*14535799*0*14535799*0*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*1*1*2*2*4*1*1*1*1*1*2*2*2*2*4*1*1*1*1*1*2*2*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*4*3*:●●●●ひらかなボタン:mColors(10)data□□□:1*11206655*0*11141205*16777215*:2*8501975*0*8501975*0*:3*14688384*16777215*14688384*16777215*:4*8960989*0*21760*16777215*:5*10083839*0*21760*16777215*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*4*4*4*4*4*1*1*1*1*1*4*4*4*4*4*1*1*1*5*5*5*4*4*4*4*1*1*1*5*5*5*5*4*4*3*:●●●●カタカナボタン:mColors(10)data□□□:1*13041596*0*11141205*16777215*:2*7846741*0*21760*16777215*:3*14688384*16777215*14688384*16777215*:4*7717723*0*7717723*0*:5*10092424*0*21760*16777215*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(100).CellColorIdx□□□:1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*5*5*5*5*5*1*1*1*1*1*2*2*2*2*2*1*1*1*1*1*2*2*2*2*2*1*1*1*5*5*5*5*5*2*2*1*1*1*5*5*5*5*2*2*3*:●●●●辞書漢字切替ボタン:mColors(10)data□□□:1*16416*12648447*4251808*10485760*:2*-1*-1*-1*-1*:3*-1*-1*-1*-1*:4*-1*-1*-1*-1*:5*-1*-1*-1*-1*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(2).CellColorIdx□□□:1*1*:●●●●辞書ボタン:mColors(10)data□□□:1*2162656*0*11141205*16777215*:2*5636095*0*21760*16777215*:3*2293684*0*21760*16777215*:4*-1*-1*-1*-1*:5*-1*-1*-1*-1*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(85).CellColorIdx□□□:1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*3*:●●●●漢字ボタン:mColors(10)data□□□:1*16777045*0*11141205*16777215*:2*11206655*0*11206655*0*:3*-1*-1*-1*-1*:4*-1*-1*-1*-1*:5*-1*-1*-1*-1*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(45).CellColorIdx□□□:1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*:●●●●ユーザーボタン:mColors(10)data□□□:1*10092492*0*11141205*16777215*:2*14688384*16777215*14688384*16777215*:3*4259839*0*4259839*0*:4*10092428*0*10092428*0*:5*8509356*0*8509356*0*:6*-1*-1*-1*-1*:7*-1*-1*-1*-1*:8*-1*-1*-1*-1*:9*-1*-1*-1*-1*:10*-1*-1*-1*-1*:mDT(200).CellColorIdx□□□:4*4*4*4*4*4*4*4*4*4*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*2*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*3*3*3*3*3*3*3*3*3*3*3*3*3*1*1*1*1*1*1*2*:"

    Friend Function Make(ByVal PCTBOX As PictureBox) As Boolean
        Dim c As String = clsButtons.CutStr
        Dim KeysTop As Integer = 60 : Dim rSpaSize As Single = 0.05 : Dim rFontSizePercent As Integer = 50
        Dim rTexts As String = ""
        '--------------------------------------------------------------------------------------------------
        rTexts = EDIME & c & EDBS & c & EDDEL & c & EDコピー & c & EDクリア & c & EDBack & c & EDNext & c & EDRET & c & "半角" & c & "全角" & c & "'" & c & """" & c & "," & c & "." & c & "(" & c & ")" & c & ED左右等しい & c & ED左右ズーム & c & ED上下等しい & c & ED上下ズーム & c
        K編集 = New clsButtons(K編集str, PCTBOX, False, 20, 20, 1000, 30, 20, 1, rSpaSize, rTexts, 50)
        With K編集
            Call .New_ExDataSet(True, 4, True, 57533, 10485760, 57533, 10485760)
        End With
        '--------------------------------------------------------------------------------------------------
        'rTexts = ""
        'rTexts = rTexts & "." & c & "ユ" & c & "ー" & c & "ザ" & c & "ー" & c & "が" & c & "設" & c & "定" & c & "可" & c & "能" & c
        'rTexts = rTexts & "①" & c & "②" & c & "③" & c & "④" & c & "⑤" & c & "⑥" & c & "⑦" & c & "⑧" & c & "⑨" & c & "⑩" & c
        'rTexts = rTexts & "（  ）" & c & "〔  〕" & c & "［  ］" & c & "｛  ｝" & c & "〈  〉" & c & "《  》" & c & "「  」" & c & "『  』" & c & "【  】" & c & "？" & c
        'rTexts = rTexts & "#Region ""xxxxxxx""~#End Region~" & c & "#If DEBUG Then~#Else~#End If~" & c & "Option Strict Off~Option Explicit On~" & c & "Imports VB = Microsoft.VisualBasic~" & c & "Imports System.Windows.Forms.Form~" & c & "Imports System.Drawing.Drawing2D~" & c & "Imports System.IO~" & c & "○○○" & c & "○○○" & c & "○○○" & c
        'rTexts = rTexts & "For @ = @ To @~    If @ Then Exit For~Next~" & c & "Do While @~    If @ Then Exit Do~Loop~" & c & "If @ Then~ElseIf @ Then~Else~End If~" & c & "Select Case @~Case @~Case @~End Select~" & c & "Function @() As Boolean~    ~End Function~" & c & "Sub @()~    ~End Sub~" & c & "With @~    ~End With~" & c & "○○○" & c & "○○○" & c & "○○○" & c
        'rTexts = rTexts & "Dim @ As Integer : " & c & "Dim @ As String : " & c & "Dim @ As Boolean : " & c & "Dim @ As Single : " & c & "Dim @ As Double : " & c & "Dim @ As Byte : " & c & " = " & c & ", " & c & " : " & c & "○○○" & c
        'rTexts = rTexts & "Dim @() As Integer : " & c & "Dim @() As String = {""""} : " & c & "Dim @() As Boolean : " & c & "Dim @() As Single : " & c & "Dim @() As Double : " & c & "Dim @() As Byte : " & c & ", " & c & " : " & c & "○○○" & c & "○○○" & c
        'rTexts = rTexts & "Return True" & c & "Return False" & c & "If @ Is Nothing Then~    ~End If~" & c & "If @ IsNot Nothing Then~    ~End If~" & c & "If ( TypeOf @ Is @ ) Then~    ~End If~" & c & "If ( TypeOf sender Is @ ) Then~    ~End If~" & c & "ByVal " & c & "ByRef " & c & "Dim @ As @ = New @(  )~" & c & "Const errchr As String = ""\/:*?""""<>|""" & c
        'rTexts = rTexts & "Public WithEvents @ As @~" & c & "Public Const @ As " & c & "Public @ As " & c & "Private @ As " & c & "Dim @ As " & c & "Integer : " & c & "String : " & c & "Boolean : " & c & "Single : " & c & "Double : " & c
        'rTexts = rTexts & "MsgBox(""ERROR in "" & Me.ToString & "".ＦｕｎｃｔｉｏｎＮａｍｅ()"" & vbCrLf & ex.ToString)~" & c & "If (TypeOf sender Is @ ) Then~    ~End If~" & c & "凸" & c & "凹" & c & "㍾" & c & "㍽" & c & "㍼" & c & "㍻" & c & "㋿" & c & "chr1310" & c
        ''-------------------------------------------------------------------------------------------
        'rTexts = rTexts & "●" & c & "◆" & c & "■" & c & "▲" & c & "▼" & c & "★" & c & "＃" & c & "＄" & c & "％" & c & "＆" & c
        'rTexts = rTexts & "○" & c & "◇" & c & "□" & c & "△" & c & "▽" & c & "☆" & c & "※" & c & "＊" & c & "§" & c & "〒" & c
        'rTexts = rTexts & "if ( @ )  {  @@@ ;  }~" & c & "if ( @ ) return;~" & c & "if ( @ == @ )~{~    @@@ ;~}~else if ( @ == @ )~{~    @@@ ;~}~else ~{~    @@@ ;~}~" & c & "#include "" @@@ ""~" & c & "for (@ = 0; @ < @; @++)~{~    if ( @ ) { @@@; break; }~}~" & c & "switch ( @ )~{~case @ : @@@ ;  break;~case @ : @@@ ;  break;~default: @@@ ;  break;~}~" & c & "if ( @ && @ )~{~    @@@ ;~}~" & c & "if ( @ || @ )~{~    @@@ ;~}~" & c & "if ( ! @ )~{~    @@@ ;~}~" & c & "if ( @ != @ )~{~    @@@ ;~}~" & c
        'rTexts = rTexts & "while( @ )~{~ @@@ ;~}~" & c & "class Cxxxxx : public Cxxxxx~{~public:~    ~protected:~    ~private:~    ~};~" & c & "virtual xxxxxxx~" & c & "inline  RetTypexxxxx  FuncNamexxxxx( )  {  return  xxxxx;  }" & c & "！" & c & "？" & c & "～" & c & "◎" & c & "＠" & c & "○○○" & c
        'rTexts = rTexts & "/* @@@ */~" & c & "// @@@~" & c & "static " & c & "unsigned " & c & "char @ ;" & c & "short @ ;" & c & "int @ ;" & c & "long @ ;" & c & "float @ ;" & c & "double @ ;" & c
        'rTexts = rTexts & "＋" & c & "－" & c & "±" & c & "×" & c & "÷" & c & "＝" & c & "≠" & c & "＜" & c & "＞" & c & "≧" & c
        'rTexts = rTexts & "→" & c & "←" & c & "↑" & c & "↓" & c & "≠" & c & "≒" & c & "∑" & c & "√" & c & "∫" & c & "≦" & c
        'rTexts = rTexts & "㎜" & c & "㎝" & c & "㎞" & c & "㎎" & c & "㎏" & c & "㏄" & c & "￡" & c & "＄" & c & "￥" & c & "℃" & c  '18 行目
        ''-------------------------------------------------------------------------------------------
        'rTexts = rTexts & "編集用テキストボックスには、メインボタン群のクリックで、文字列を入力できます。~~" & c
        'rTexts = rTexts & "編集用テキストボックスに、IME モードを設定して、文字列を入力できます。~" & "この場合、キーボードからの入力に限り、IME モードが有効に機能します。~" & "ボタン群の出力文字は、IME モードに関係なく、ボタンの設定文字を入力します。~~" & c
        'rTexts = rTexts & "上部の横一列の編集ボタン群は、IME切替、特殊文字、編集コード、メニュー表示、等のボタンです。~~" & c
        'rTexts = rTexts & "ウインドウの左側に、ABC / ＡＢＣ / ひらかな / カタカナ ( 10 * 10 ) ボタンが並んであります。~" & "これらのボタン群には、ユーザーが任意の一文字を設定できます。~" & "これらのボタンをクリックすると、メインテキストに、ボタンの文字が出力されます。~~" & c
        'rTexts = rTexts & "中央のボタンの、[ 辞 ] ボタンで、辞書モードが開始します。~" & "辞書モードで、辞書用ボタン [ あ ～ ん ] をクリックすると、辞書索引テキストにキーワード入力されます。~" & "辞書索引テキストにキーワードの変化に対応して、和文辞書リストが、右上のリストに表示されます。~" & "これらリストをクリックすると、メインテキストに、リストの文字列が出力されます。~~" & c
        'rTexts = rTexts & "[ 辞 ] ボタンの右のボタン[ C ] は、辞書索引テキストをクリアします。~" & "[ 辞 ] ボタンの右のボタン[ E ] は、[ 辞書の編集 ] ダイアログを表示します。~~" & c
        'rTexts = rTexts & "[ 辞書の編集 ] のリストをクリックすると、編集用テキストボックスが、表示されます。~" & "編集用テキストボックスに、文字列を設定し、[ 追加 ] ボタンで、新しい文字列を登録できます。~" & "あるいは、[ 削除 ] ボタンで、編集用テキストボックスの文字列を、辞書から削除できます。~" & "[ 辞書の編集 ] の [ 適用 ] ボタンをクリックすると、辞書の編集が有効になります。~~" & c
        'rTexts = rTexts & "中央のボタンの、[ 漢 ] ボタンで、漢字モードが開始します。~" & "漢字モードで、漢字用ボタン [ あ ～ ん ] をクリックすると、漢字リストに漢字が表示されます。~" & "漢字リストのリストをクリックすると、メインテキストに、リストの文字列が出力されます。~~" & c
        'rTexts = rTexts & "ウインドウの右側に、ユーザーが任意の文を設定できる、 ( 10 * 20 ) ボタンが並んであります。~" & "ひとつのボタンに、" & mStrボタンテキストMaxLen & "文字までの長い文字列を、設定できます。~~" & c
        'rTexts = rTexts & "文字列の中の、改行コードは、半角のチルダ記号　""～""　で置き換えます。~" & "文字列設定は、、、専用のダイアログを表示して、出力文字列を設定します。~~" & c
        'rTexts = rTexts & "◆ボタン群 / 辞書 / 漢字リスト でのマウス右クリックで、編集用テキストボックスで◆改行◆できます。~~" & c
        ''-------------------------------------------------------------------------------------------
        'rTexts = rTexts & "色の設定については、、、~" & "すべてのボタンは、各グループの基本的な色を設定できます。~" & "さらに各グループ内で、個別のボタンごとに、特別な色を設定できます。~~" & c
        'rTexts = rTexts & "フォントの設定については、、、~" & "編集用テキストボックス / 辞書リスト / 漢字リスト / では、それぞれのフォントを設定できます。~" & "編集ボタン / ABC / ＡＢＣ / ひらかな / カタカナ / 辞漢 / ユーザー / では、共通フォントを設定できます。~~" & c
        'rTexts = rTexts & "○○○" & c & "○○○" & c & "○○○" & c & "○○○" & c & "○○○" & c & "○○○" & c & "chr1310" & c

        '****************************************************************************************************************************
        'Copy from INI     " は　""　に変更すること
        rTexts = ".|,.|ユ|,.|ー|,.|ザ|,.|ー|,.|が|,.|設|,.|定|,.|可|,.|能|,.|①|,.|②|,.|③|,.|④|,.|⑤|,.|⑥|,.|⑦|,.|⑧|,.|⑨|,.|⑩|,.|（  ）|,.|〔  〕|,.|［  ］|,.|｛  ｝|,.|〈  〉|,.|《  》|,.|「  」|,.|『  』|,.|【  】|,.|？|,.|#Region ""xxxxxxx""~#End Region~|,.|#If DEBUG Then~#Else~#End If~|,.|Option Strict Off~Option Explicit On~|,.|Imports VB = Microsoft.VisualBasic~|,.|Imports System.Windows.Forms.Form~|,.|Imports System.Drawing.Drawing2D~|,.|Imports System.IO~|,.|○○○|,.|○○○|,.|○○○|,.|For @ = @ To @~    If @ Then Exit For~Next~|,.|Do While @~    If @ Then Exit Do~Loop~|,.|If @ Then~ElseIf @ Then~Else~End If~|,.|Select Case @~Case @~Case @~End Select~|,.|Function @() As Boolean~    ~End Function~|,.|Sub @()~    ~End Sub~|,.|With @~    ~End With~|,.|○○○|,.|○○○|,.|○○○|,.|Dim @ As Integer : |,.|Dim @ As String : |,.|Dim @ As Boolean : |,.|Dim @ As Single : |,.|Dim @ As Double : |,.|Dim @ As Byte : |,.|Private m_XXXXX As TypeYYYYY = ZZZZZ   '初期設定値~ReadOnly Property XXXXX() As TypeYYYYY~    Get~        Return m_XXXXX~    End Get~End Property~|,.|Private m_XXXXX As TypeYYYYY = ZZZZZ   '初期設定値~Property XXXXX() As TypeYYYYY~    Get~        Return m_XXXXX~    End Get~    Set(ByVal value As TypeYYYYY)~        If m_XXXXX = value Then Return~        m_XXXXX = value~    End Set~End Property~|,.| : |,.|○○○|,.|Dim @() As Integer : |,.|Dim @() As String = {""} : |,.|Dim @() As Boolean : |,.|Dim @() As Single : |,.|Dim @() As Double : |,.|Dim @() As Byte : |,.|, |,.| : |,.|○○○|,.|○○○|,.|Return True|,.|Return False|,.|If @ Is Nothing Then~    ~End If~|,.|If @ IsNot Nothing Then~    ~End If~|,.|If ( TypeOf @ Is @ ) Then~    ~End If~|,.|If ( TypeOf sender Is @ ) Then~    ~End If~|,.|ByVal |,.|ByRef |,.|Dim @ As @ = New @(  )~|,.|Const errchr As String = ""\/:*?""""<>|""|,.|Public WithEvents @ As @~|,.|Public Const @ As |,.|Public @ As |,.|Private @ As |,.|Dim @ As |,.|Integer : |,.|String : |,.|Boolean : |,.|Single : |,.|Double : |,.|MsgBox(""ERROR in "" & Me.ToString & ""._ＴｈｉｓＦｕｎｃｔｉｏｎＮａｍｅ_()"" & vbCrLf & ex.ToString)~|,.|If (TypeOf sender Is @ ) Then~    Dim XXXX as @~    ~End If~|,.|凸|,.|凹|,.|㊤|,.|㊥|,.|㊦|,.|㊧|,.|㊨|,.|▼|,.|●|,.|◆|,.|■|,.|▲|,.|▼|,.|★|,.|＃|,.|＄|,.|％|,.|＆|,.|○|,.|◇|,.|□|,.|△|,.|▽|,.|☆|,.|※|,.|＊|,.|§|,.|〒|,.|if ( @ )  {  @@@ ;  }~|,.|if ( @ ) return;~|,.|if ( @ == @ )~{~    @@@ ;~}~else if ( @ == @ )~{~    @@@ ;~}~else ~{~    @@@ ;~}~|,.|#include "" @@@ ""~|,.|for (@ = 0; @ < @; @++)~{~    if ( @ ) { @@@; break; }~}~|,.|switch ( @ )~{~case @ : @@@ ;  break;~case @ : @@@ ;  break;~default: @@@ ;  break;~}~|,.|if ( @ && @ )~{~    @@@ ;~}~|,.|if ( @ || @ )~{~    @@@ ;~}~|,.|if ( ! @ )~{~    @@@ ;~}~|,.|if ( @ != @ )~{~    @@@ ;~}~|,.|while( @ )~{~ @@@ ;~}~|,.|class Cxxxxx : public Cxxxxx~{~public:~    ~protected:~    ~private:~    ~};~|,.|virtual xxxxxxx~|,.|inline  RetTypexxxxx  FuncNamexxxxx( )  {  return  xxxxx;  }|,.|！|,.|？|,.|～|,.|◎|,.|＠|,.|○○○|,.|/* @@@ */~|,.|// @@@~|,.|static |,.|unsigned |,.|char @ ;|,.|short @ ;|,.|int @ ;|,.|long @ ;|,.|float @ ;|,.|double @ ;|,.|＋|,.|－|,.|±|,.|×|,.|÷|,.|＝|,.|≠|,.|＜|,.|＞|,.|≧|,.|→|,.|←|,.|↑|,.|↓|,.|≠|,.|≒|,.|∑|,.|√|,.|∫|,.|≦|,.|㎜|,.|㎝|,.|㎞|,.|㎎|,.|㎏|,.|㏄|,.|￡|,.|＄|,.|￥|,.|℃|,.|編集用テキストボックスには、メインボタン群のクリックで、文字列を入力できます。~~|,.|編集用テキストボックスに、IME モードを設定して、文字列を入力できます。~この場合、キーボードからの入力に限り、IME モードが有効に機能します。~ボタン群の出力文字は、IME モードに関係なく、ボタンの設定文字を入力します。~~|,.|上部の横一列の編集ボタン群は、IME切替、特殊文字、編集コード、メニュー表示、等のボタンです。~~|,.|ウインドウの左側に、ABC / ＡＢＣ / ひらかな / カタカナ ( 10 * 10 ) ボタンが並んであります。~これらのボタン群には、ユーザーが任意の一文字を設定できます。~これらのボタンをクリックすると、メインテキストに、ボタンの文字が出力されます。~~|,.|中央のボタンの、[ 辞 ] ボタンで、辞書モードが開始します。~辞書モードで、辞書用ボタン [ あ ～ ん ] をクリックすると、辞書索引テキストにキーワード入力されます。~辞書索引テキストにキーワードの変化に対応して、和文辞書リストが、右上のリストに表示されます。~これらリストをクリックすると、メインテキストに、リストの文字列が出力されます。~~|,.|[ 辞 ] ボタンの右のボタン[ C ] は、辞書索引テキストをクリアします。~[ 辞 ] ボタンの右のボタン[ E ] は、[ 辞書の編集 ] ダイアログを表示します。~~|,.|[ 辞書の編集 ] のリストをクリックすると、編集用テキストボックスが、表示されます。~編集用テキストボックスに、文字列を設定し、[ 追加 ] ボタンで、新しい文字列を登録できます。~あるいは、[ 削除 ] ボタンで、編集用テキストボックスの文字列を、辞書から削除できます。~[ 辞書の編集 ] の [ 適用 ] ボタンをクリックすると、辞書の編集が有効になります。~~|,.|中央のボタンの、[ 漢 ] ボタンで、漢字モードが開始します。~漢字モードで、漢字用ボタン [ あ ～ ん ] をクリックすると、漢字リストに漢字が表示されます。~漢字リストのリストをクリックすると、メインテキストに、リストの文字列が出力されます。~~|,.|ウインドウの右側に、ユーザーが任意の文を設定できる、 ( 10 * 20 ) ボタンが並んであります。~ひとつのボタンに、２６０文字までの長い文字列を、設定できます。~~|,.|文字列の中の、改行コードは、半角のチルダ記号　""～""　で置き換えます。~文字列設定は、、、専用のダイアログを表示して、出力文字列を設定します。~~|,.|◆ボタン群 / 辞書 / 漢字リスト でのマウス右クリックで、編集用テキストボックスで◆改行◆できます。~~|,.|色の設定については、、、~すべてのボタンは、各グループの基本的な色を設定できます。~さらに各グループ内で、個別のボタンごとに、特別な色を設定できます。~~|,.|フォントの設定については、、、~編集用テキストボックス / 辞書リスト / 漢字リスト / では、それぞれのフォントを設定できます。~編集ボタン / ABC / ＡＢＣ / ひらかな / カタカナ / 辞漢 / ユーザー / では、共通フォントを設定できます。~~|,.|○○○|,.|○○○|,.|○○○|,.|○○○|,.|○○○|,.|○○○|,.|▼|,.|●●●●"
        '****************************************************************************************************************************
        '--------------------------------------------------------------------------------------------------
        KUSER = New clsButtons(KUSERstr, PCTBOX, False, 20, KeysTop, 300, 600, 10, 20, rSpaSize, rTexts, rFontSizePercent)
        With KUSER
            Call .New_ExDataSet(False, 4, True, &H95FFCA&, 0, &H95FFCA&, 0)
            gggstr = .BtnsText改行コードGetSet(1, 0, 100, c改行コード文字)
            gggstr = .BtnsText改行コードGetSet(1, 0, 200, c改行コード文字)
            .BtnIsUserText = True
            .DropTextEnabled = True
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = ""
        rTexts = rTexts & "ABCDEFG()@"
        rTexts = rTexts & "abcdefg{}+"
        rTexts = rTexts & "HIJKLMN[]-"
        rTexts = rTexts & "hijklmn*/="
        rTexts = rTexts & "OPQRSTU<>^"
        rTexts = rTexts & "opqrstu,.\"
        rTexts = rTexts & "VWXYZ_;:*|"
        rTexts = rTexts & "vwxyz_'""?!"
        rTexts = rTexts & "0123456789"
        rTexts = rTexts & "?!#$%&\| " & c改行コード文字
        mABCD半角TextsDEF = rTexts
        KABCD = New clsButtons(KABCDstr, PCTBOX, False, 700, KeysTop + 300, 210, 300, 10, 10, rSpaSize, rTexts, rFontSizePercent)
        With KABCD
            Call .New_ExDataSet(True, 4, True, &HFFB5B5&, 0, &HFFB5B5&, 0)
            gggstr = .BtnsText改行コードGetSet(1, 0, 100, c改行コード文字)
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = ""
        rTexts = rTexts & "ＡＢＣＤＥＦＧ（）Ⅰ"
        rTexts = rTexts & "ａｂｃｄｅｆｇ＋－Ⅱ"
        rTexts = rTexts & "ＨＩＪＫＬＭＮ×÷Ⅲ"
        rTexts = rTexts & "ｈｉｊｋｌｍｎ±％Ⅳ"
        rTexts = rTexts & "ＯＰＱＲＳＴＵ＝‰Ⅴ"
        rTexts = rTexts & "ｏｐｑｒｓｔｕ≠＃Ⅵ"
        rTexts = rTexts & "ＶＷＸＹＺ＿？！＄Ⅶ"
        rTexts = rTexts & "ｖｗｘｙｚ＠∞ⅩⅨⅧ"
        rTexts = rTexts & "０１２３４５６７８９"
        rTexts = rTexts & "＜＞≦≧／＼§￥＆" & c改行コード文字
        mABCD全角TextsDEF = rTexts
        KABCDBIG = New clsButtons(KABCDBIGstr, PCTBOX, False, 700, KeysTop, 210, 300, 10, 10, rSpaSize, rTexts, rFontSizePercent)
        With KABCDBIG
            Call .New_ExDataSet(True, 4, True, &HFFBC4C&, 0, &HFFBC4C&, 0)
            gggstr = .BtnsText改行コードGetSet(1, 0, 100, c改行コード文字)
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = ""
        rTexts = rTexts & "あいうえおぁぃぅぇぉ"
        rTexts = rTexts & "かきくけこがぎぐげご"
        rTexts = rTexts & "さしすせそざじずぜぞ"
        rTexts = rTexts & "たちつてとだぢづでど"
        rTexts = rTexts & "なにぬねのばびぶべぼ"
        rTexts = rTexts & "はひふへほぱぴぷぺぽ"
        rTexts = rTexts & "まみむめも「」（）※"
        rTexts = rTexts & "らりるれろ［］『』％"
        rTexts = rTexts & "やゆよゃゅょ←→！？"
        rTexts = rTexts & "わをんっゎー～、。" & c改行コード文字
        mひらかなTextsDEF = rTexts
        Kひらかな = New clsButtons(Kひらかなstr, PCTBOX, False, 400, KeysTop, 300, 300, 10, 10, rSpaSize, rTexts, rFontSizePercent)
        With Kひらかな
            Call .New_ExDataSet(True, 4, True, &HA0E0FF&, 0, &HA0E0FF&, 0)
            gggstr = .BtnsText改行コードGetSet(1, 0, 100, c改行コード文字)
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = ""
        rTexts = rTexts & "アイウエオァィゥェォ"
        rTexts = rTexts & "カキクケコガギグゲゴ"
        rTexts = rTexts & "サシスセソザジズゼゾ"
        rTexts = rTexts & "タチツテトダヂヅデド"
        rTexts = rTexts & "ナニヌネノバビブベボ"
        rTexts = rTexts & "ハヒフヘホパピプペポ"
        rTexts = rTexts & "マミムメモ「」（）※"
        rTexts = rTexts & "ラリルレロ［］『』％"
        rTexts = rTexts & "ヤユヨャュョヵヶ！？"
        rTexts = rTexts & "ワヲンッヮー～、。" & c改行コード文字
        mカタカナTextsDEF = rTexts
        Kカタカナ = New clsButtons(Kカタカナstr, PCTBOX, False, 400, KeysTop, 300, 300, 10, 10, rSpaSize, rTexts, rFontSizePercent)
        With Kカタカナ
            Call .New_ExDataSet(True, 4, True, &H60FF40&, 0, &H60FF40&, 0)
            gggstr = .BtnsText改行コードGetSet(1, 0, 100, c改行コード文字)
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = "辞" & c & "漢" & c
        K辞書漢字CHG = New clsButtons(K辞書漢字CHGstr, PCTBOX, True, 120, KeysTop, 80, 30, 2, 1, rSpaSize, rTexts, rFontSizePercent)
        With K辞書漢字CHG
            Call .New_ExDataSet(True, 4, False, &H4020&, &HC0FFFF&, &H4000FF&, &HC0FFFF&)
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = ""
        rTexts = rTexts & "あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもらりるれろやゆよわをんー***"
        rTexts = rTexts & "ぁぃぅぇぉがぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽゃゅょゎっ"
        K辞書 = New clsButtons(K辞書str, PCTBOX, False, 120, KeysTop + 80, 150, 600, 5, 17, rSpaSize, rTexts, rFontSizePercent)
        With K辞書
            Call .New_ExDataSet(True, 4, True, 14745599, 10493952, 14745599, 10493952)
            .Visible = True
        End With
        '--------------------------------------------------------------------------------------------------
        rTexts = ""
        rTexts = rTexts & "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモラリルレロヤユヨワ"
        K漢字 = New clsButtons(K漢字str, PCTBOX, False, 120, KeysTop + 80, 150, 600, 5, 9, rSpaSize, rTexts, rFontSizePercent)
        With K漢字
            Call .New_ExDataSet(True, 4, True, &H40E0A0&, &HE00000&, &H40E0A0&, &HE00000&)
            .Visible = False
        End With
        For a As Integer = 1 To UBound(m漢字団)
            With m漢字団(a)
                .key = Mid(c漢字団KEYs, a, 1)
                gggbol = KanDataset(.key, .漢字列)
            End With
        Next
        '-------------------------------------------------------------------
        'ボタンのデフォルトの配色を設定
        Dim wAry() As String = {""}
        Dim m As Integer = Ⅹ文をカットして配列にする(cDefBtnColorStr, cINIcutstr, wAry)
        For a As Integer = 1 To UBound(wAry)
            If InStr(wAry(a), "編集ボタン") = 1 Then
                gggbol = K編集.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "ユーザーボタン") = 1 Then
                gggbol = KUSER.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "ABCDボタン") = 1 Then
                gggbol = KABCD.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "ＡＢＣＤボタン") = 1 Then
                gggbol = KABCDBIG.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "ひらかなボタン") = 1 Then
                gggbol = Kひらかな.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "カタカナボタン") = 1 Then
                gggbol = Kカタカナ.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "辞書漢字切替ボタン") = 1 Then
                gggbol = K辞書漢字CHG.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "辞書ボタン") = 1 Then
                gggbol = K辞書.aafボタンの色データーの設定(wAry(a), 14)
            ElseIf InStr(wAry(a), "漢字ボタン") = 1 Then
                gggbol = K漢字.aafボタンの色データーの設定(wAry(a), 14)
            End If
        Next
        '--------------------------------------------------------------------------------------------------
        aao選択枠 = New 五clsWakuwaku
        With aao選択枠
            .aa_Make(mPCTBOX, 4, Color.Red) : aap選択枠Show = False
        End With
        '--------------------------------------------------------------------------------------------------
        aao選択枠InUserPnl = New 五clsWakuwaku
        With aao選択枠InUserPnl
            .aa_Make(mUserBoxPnl, 4, Color.Red) : aao選択枠InUserPnl.Visible = True
        End With
        '--------------------------------------
        gggbol = JISHO.Make()
        '--------------------------------------
        Return True
    End Function

    Friend Function PCTBOX_Resize(ByVal PCT As PictureBox, ByVal ParentBK As Color, ByVal DoDraw As Boolean) As Boolean
        ''--------------------------------------------------
        'qqqqq("clsPatapata.PCTBOX_Resize()  - IN")
        ''--------------------------------------------------
        If Not aapReSizeCallOK Then Return False
        '--------------------------------------------------
        Static sOldWD, sOldHT As Integer, sCount As Integer = 0
        Try
            BackColorMain = ParentBK
            With PCT
                Dim wd As Integer = .Width, ht As Integer = .Height
                If sOldWD = wd And sOldHT = ht Then
                    If Not DoDraw Then Return True
                End If
                Dim img As Image = PCT.Image
                Dim colorINT As Integer = ⅩColor_to_INT(ParentBK)
                If Not ⅩImage_サイズチェック_異なれば再作成_色で色りつぶす(img, wd, ht, colorINT) Then Return False
                If DoDraw Then
                    gggbol = ⅩImageFillRect(img, colorINT, 0, 0, wd, ht, False)
                End If
                PCT.Image = img
                sOldWD = wd : sOldHT = ht
                'sCount += 1 : qqqqq(CStr(sCount) & "  clsPatapata.PCTBOX_Resize()  " & CStr(wd) & ", " & CStr(ht))
            End With
        Catch ex As Exception
            MsgBox("ERROR in clsPatapata.PCTBOX_Resize() - 1" & vbCrLf & ex.ToString)
            Return False
        End Try
        '********************************************************************
        Try
            Const WDmin As Integer = 14, WDmax As Integer = 100, HTmin As Integer = 14, HTmax As Integer = 75
            Dim 選択枠のためのシフト As Integer = aao選択枠.LineWidth
            Dim x, y, w, h As Integer
            Dim PichX As Integer = Ⅹ数値範囲Int(WDmin, WDmax, (PCT.Width - 選択枠のためのシフト - 選択枠のためのシフト) / 46.8)
            Dim PichY As Integer = Ⅹ数値範囲Int(HTmin, HTmax, (PCT.Height - 選択枠のためのシフト) / 20)
            '--------------------------------------------------
            Dim K編集Top As Integer = 2
            Dim K編集Height As Integer = PichY * 1.2
            Dim KeysTop As Integer = K編集Top + K編集Height + 6
            PichY = Ⅹ数値範囲Int(HTmin, HTmax, (PCT.Height - 選択枠のためのシフト - KeysTop) \ 20)
            '--------------------------------------------------
            KABCD.PostSizeChangeByPich(選択枠のためのシフト, KeysTop, PichX, PichY, False)
            KABCDBIG.PostSizeChangeByPich(選択枠のためのシフト, KeysTop + PichY * 10, PichX, PichY, False)
            '--------------------------------------------------
            Dim 間隔X As Integer = PichX \ 3
            x = KABCD.CellRightByIndex(10) + 間隔X
            Kひらかな.PostSizeChangeByPich(x, KeysTop, PichX, PichY, True)  'True = Font Size Set Def
            Kカタカナ.PostSizeChangeByPich(x, KeysTop + PichY * 10, PichX, PichY, False)
            If DlgStdBtnAllSet IsNot Nothing Then
                Dim key As String = DlgStdBtnAllSet.CurKey()
                Call aaf選択枠サイズセット_STD_KEYS(key, 0, 0)
            End If
            '--------------------------------------------------
            Dim 間隔Cell As Integer = Kひらかな.SpaceCurValXY
            x = Kひらかな.Right + 間隔X
            y = KeysTop + PichY * 1.3
            w = (PichX * 3) / 2
            h = PichY * (3 - 1.3)
            K辞書漢字CHG.PostSizeChangeByPich(x, y, w, h, False)
            '--------------------------------------------------
            y = KeysTop + PichY * 3
            K辞書.PostSizeChangeByPich(x, y, PichX, PichY, False)
            K漢字.PostSizeChangeByPich(x, y, PichX, PichY, False)
            For a As Integer = 48 To 50 : K辞書.CellVisibleByIndex(a) = False : Next
            For a As Integer = 45 To 45 : K漢字.CellVisibleByIndex(a) = False : Next
            '--------------------------------------------------
            w = ((K辞書.CellRightByIndex(5) - K辞書漢字CHG.Right - 間隔Cell) \ 2) - 間隔Cell
            h = K辞書漢字CHG.Height
            x = K辞書漢字CHG.Right + 間隔Cell + 間隔Cell
            y = K辞書漢字CHG.Top
            mJiKeyLblClear.SetBounds(x, y, w, h, BoundsSpecified.All)
            x = mJiKeyLblClear.Right + 間隔Cell
            mJiHisBtn.SetBounds(x, y, w, h, BoundsSpecified.All)
            mJiKeyLblEdit.Enabled = (Trim(mJiKeyLbl.Text) <> "")
            mJiKeyLblClear.Enabled = mJiKeyLblEdit.Enabled
            gggsng = ⅩFontSizeChange(mJiKeyLbl, PCT.Font.Size)
            h = PichY - 間隔Cell
            mJiKeyLbl.SetBounds(K辞書.Left, KeysTop, K辞書.Width, h, BoundsSpecified.All)
            '--------------------------------------------------
            x = K辞書.CellRightByIndex(5) + 間隔X
            KUSER.PostSizeChangeByPich(x, KeysTop, PichX * 2, PichY, False)
            Call aaf選択枠サイズセット_KUSER(0, 0, "")
            '--------------------------------------------------
            With KUSER
                mJiHisList.SetBounds(.Left, .Top, .Width, .Height, BoundsSpecified.All)
            End With
            '--------------------------------------------------
            x = 1 + K編集.CellCount
            Dim K編集CellWD As Integer = KUSER.Right \ (x)
            w = K編集CellWD * K編集.CellCount
            x = PCT.ClientRectangle.Width - w
            K編集.PostSizeChangeByPich(x, K編集Top, K編集CellWD, K編集Height, False)
            mbtnMENU.SetBounds(0, K編集Top, x - 2, K編集.Height, BoundsSpecified.All)
            mbtnMENU.Text = IIf(K編集Height > 20, "●", "")
            '--------------------------------------------------
            mlblUSER.SetBounds(K編集.Left, K編集.Top, K編集.Width, K編集.Height, BoundsSpecified.All)
            mbtnUser.SetBounds(KUSER.Left, KUSER.Top, KUSER.CellWidth, KUSER.CellHeight, BoundsSpecified.All)
            mbtnUser.Text = IIf(mbtnUser.Height > 20, "*", "")
            '--------------------------------------------------
            Call zzUserBoxPnl_SizeSet()
            '--------------------------------------------------
            K編集.DrawEnable = True : K編集.Draw(0)
            KABCD.DrawEnable = True : KABCD.Draw(0)
            KABCDBIG.DrawEnable = True : KABCDBIG.Draw(0)
            Kひらかな.DrawEnable = True : Kひらかな.Draw(0)
            Kカタカナ.DrawEnable = True : Kカタカナ.Draw(0)
            K辞書漢字CHG.DrawEnable = True : K辞書漢字CHG.Draw(0)
            KUSER.DrawEnable = True : KUSER.Draw(0)
            '--------------------------------------------------
            Call K辞書漢字_ChangeSet()
            '--------------------------------------------------
            Dim Pctfsz As Single = PCT.Font.Size : Dim fs As Single = mUserBoxLbl(1).Font.Size
            If Pctfsz >= fs Then
                Call ⅩFontSize_Set_SizeVal_Or_MenuItem(Nothing, Pctfsz, mbtnMENU, mbtnUser, mJiKeyLblClear, mJiHisBtn, mJiKeyLbl, mlblUSER, mUserBoxTxt)
            Else
                Call ⅩFontSize_Set_SizeVal_Or_MenuItem(Nothing, Pctfsz, mbtnMENU, mbtnUser, mJiKeyLblClear, mJiHisBtn, mJiKeyLbl, mlblUSER)
                Call ⅩFontSize_Set_SizeVal_Or_MenuItem(Nothing, fs, mUserBoxTxt)
            End If
            '--------------------------------------------------
            If sCount = 0 Then 'And (mPropertysReadDone = False) Then
                Call zzK辞書_K漢字_mJiKeyLbl_ColorCgange_ListBoxs_ColorSet()
                Call zzColorSet_mUserBoxTxt(KUSER.BackColorUP, KUSER.ForeColorUP)
                mUserBoxPnl.BackColor = ParentBK
                Call zzmJiHisList_ColumnWidth_Set()
                mJiKeyLblinListBox.SetBounds(0, 0, 0, 0, BoundsSpecified.Location)
            End If
            sCount += 1
            '--------------------------------------------------
            PCT.Refresh()
            'qqqqq("PichX = " & CStr(PichX) & ", PichY = " & CStr(PichY) & ", PCT.Font.Size = " & CStr(PCT.Font.Size))
        Catch ex As Exception
            MsgBox("ERROR in clsPatapata.PCTBOX_Resize() - 2" & vbCrLf & ex.ToString)
            Return False
        End Try
        '--------------------------------------------------------
        mPCTBOX.AllowDrop = True      '2024/03/01  PCTBOX へのドラッグドロップは禁止
        '--------------------------------------------------------
        RaiseEvent Resize(PCT.Width, PCT.Height)
        ''--------------------------------------------------
        'qqqqq("clsPatapata.PCTBOX_Resize()  - OUT")
        ''--------------------------------------------------
        Return True
    End Function

    Friend Function firstShow() As Boolean
        K辞書漢字CHG.ButtonPushUpDown(1) = True
        Call K辞書漢字_ChangeSet()
        Call TBOX_TextChanged(Nothing, Nothing)
        Call SPRT_or_SPRTUP_SplitterMoved()
    End Function

    Private mPropertysReadDone As Boolean = False
    Friend Function PropertysRW(ByVal Open0_Save1 As Integer, ByVal dstr As String) As String
        Const c As String = ":::"
        Try
            Dim w As String = ""
            If Open0_Save1 = 0 Then
                Dim wAry() As String = {""}
                Dim m As Integer = Ⅹ文をカットして配列にする(dstr, cINIcutstr, wAry)
                Dim sss() As String = {""} : Dim n As Integer
                If m > 0 Then  'wAry(1)
                    n = Ⅹ文をカットして配列にする(wAry(1), c, sss)
                    Try
                        If n = 6 Then
                            BackColorMain = ⅩColor構造体_from_色値(Val(sss(1))) : ForeColorMain = ⅩColor構造体_from_色値(Val(sss(2)))

                            Call DlgColorSet_色を設定してください(メインテキストstr, Val(sss(3)), Val(sss(4)), Val(sss(5)), Val(sss(6)))
                        End If
                    Catch ex As Exception
                    End Try
                End If
                If m > 1 Then  'wAry(2)
                    n = Ⅹ文をカットして配列にする(wAry(2), c, sss)
                    If n = 7 Then
                        Dim fname As String = sss(1)
                        Dim fsz As Single = Math.Max(10, Math.Min(22, Val(sss(2))))
                        Dim FS As FontStyle = IIf(CBool(sss(3)), FontStyle.Bold, FontStyle.Regular) Or mTBOX.Font.Italic Or mTBOX.Font.Underline
                        gggbol = Ⅹコントロールフォント変更(mTBOX, fname, fsz, FS)
                        Call TextBoxImeModeColorGetSet(1, Val(sss(4)), Val(sss(5)), Val(sss(6)), Val(sss(7)))
                        Call TextBoxImeModeChanged(mTBOX)
                    End If
                End If
                If m > 11 Then 'wAry(3) ---> wAry(12)
                    'ary(3) Btns Colors □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(3) 
                    gggstr = K編集.PropertysRW(Open0_Save1, wAry(4))  '
                    gggstr = KABCD.PropertysRW(Open0_Save1, wAry(5))  '
                    gggstr = KABCDBIG.PropertysRW(Open0_Save1, wAry(6)) '
                    gggstr = Kひらかな.PropertysRW(Open0_Save1, wAry(7))  '
                    gggstr = Kカタカナ.PropertysRW(Open0_Save1, wAry(8)) '
                    gggstr = K辞書漢字CHG.PropertysRW(Open0_Save1, wAry(9)) '
                    gggstr = K辞書.PropertysRW(Open0_Save1, wAry(10))  '
                    gggstr = K漢字.PropertysRW(Open0_Save1, wAry(11))  '
                    gggstr = KUSER.PropertysRW(Open0_Save1, wAry(12))  '
                End If
                If m > 17 Then
                    'K編集 / KABCD / KABCDBIG / Kひらかな / Kカタカナ / キーの文字(100 Cell) の保存も必要  2024/03/27
                    'ary(13) K編集,KABCD,KABCDBIG,Kひらかな,Kカタカナ.TextAll □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(13) 
                    K編集.AllButtonText = wAry(14)
                    KABCD.AllButtonText = wAry(15)
                    KABCDBIG.AllButtonText = wAry(16)
                    Kひらかな.AllButtonText = wAry(17)
                    Kカタカナ.AllButtonText = wAry(18)
                End If
                If m > 19 Then
                    'KUSER カスタムキーの文字(200 Cell) の保存も必要
                    'ary(19) KUSER.TextAll □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(19) 
                    KUSER.AllButtonText = wAry(20)
                End If
                If m > 25 Then
                    'ary(21) フォントデーター □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(21) 
                    Dim rFontName As String = "" : Dim rFontSize As Integer = 9 : Dim rFontBold As Boolean = False
                    For b As Integer = 21 + 1 To 21 + 5  'wAry(22)  --->  'wAry(26)
                        If 3 = Ⅹ文をカットして配列にする(wAry(b), c, sss) Then
                            rFontName = sss(1) : rFontSize = Math.Max(7, Math.Min(30, Val(sss(2)))) : rFontBold = CBool(sss(3))  '2023/03/27 change
                            Call DlgListFont_フォントを設定してください(b - 21, rFontName, rFontSize, rFontBold)
                        End If
                    Next
                End If
                '******************************************************
                Call JISHO.JishoModeCange(JISHO.ReadMode, True)
                '******************************************************
                mPropertysReadDone = True
            Else
                'wAry(1)
                Dim wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN As Integer
                Call DlgColorSet_色のデーターをください(メインウインドウstr, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN)
                w = w & CStr(wBackColorUP) & c & CStr(wForeColorUP) & c  '1, 2
                Call DlgColorSet_色のデーターをください(メインテキストstr, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN)
                w = w & CStr(wBackColorUP) & c & CStr(wForeColorUP) & c & CStr(wBackColorDN) & c & CStr(wForeColorDN) & cINIcutstr  '3, 4, 5, 6
                'wAry(2)
                With mTBOX.Font
                    w = w & CStr(.Name) & c & CStr(.Size) & c & CStr(.Bold) & c & CStr(mTBOXSTDc背) & c & CStr(mTBOXSTDc字) & c & CStr(mTBOXIMEc背) & c & CStr(mTBOXIMEc字) & c & cINIcutstr
                End With
                w = w & "ary(3) Btns Colors □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(3) 
                w = w & K編集.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(4)
                w = w & KABCD.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(5)
                w = w & KABCDBIG.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(6)
                w = w & Kひらかな.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(7)
                w = w & Kカタカナ.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(8)
                w = w & K辞書漢字CHG.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(9)
                w = w & K辞書.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(10)
                w = w & K漢字.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(11)
                w = w & KUSER.PropertysRW(Open0_Save1, "") & cINIcutstr 'wAry(12)
                '******************************************************
                'K編集 / KABCD / KABCDBIG / Kひらかな / Kカタカナ / キーの文字(100 Cell) の保存も必要  2024/03/27
                w = w & "ary(13) K編集,KABCD,KABCDBIG,Kひらかな,Kカタカナ.TextAll □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(13) 
                w = w & K編集.AllButtonText & cINIcutstr 'wAry(14)
                w = w & KABCD.AllButtonText & cINIcutstr 'wAry(15)
                w = w & KABCDBIG.AllButtonText & cINIcutstr 'wAry(16)
                w = w & Kひらかな.AllButtonText & cINIcutstr 'wAry(17)
                w = w & Kカタカナ.AllButtonText & cINIcutstr 'wAry(18)
                '******************************************************
                'KUSER カスタムキーの文字(200 Cell) の保存も必要
                w = w & "ary(19) KUSER.TextAll □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(19) 
                w = w & KUSER.AllButtonText & cINIcutstr         'wAry(20)
                '******************************************************
                Dim wFontName As String = "", wFontSize As Integer, wFontBold As Boolean
                w = w & "ary(21) フォントデーター □□□□□□□□□□□□□□□□□□□□" & cINIcutstr  'wAry(21) 
                For b As Integer = 1 To 5                'wAry(22)  --->  'wAry(26)
                    Call DlgListFont_フォントデーターをください(b, wFontName, wFontSize, wFontBold)
                    w = w & wFontName & c & CStr(wFontSize) & c & CStr(wFontBold) & c & cINIcutstr
                Next
                '******************************************************
                Call JISHO.SaveAllChangedFile()
                '******************************************************
            End If
            Return w
        Catch ex As Exception
            MsgBox("ERROR in PropertysRW()" & vbCrLf & ex.ToString)
            Return ""
        End Try
    End Function

    Friend Sub SPRT_or_SPRTUP_SplitterMoved()
        Dim n As Integer = K編集.CellIndex_By_CellText(ED左右等しい)
        If n > 0 Then
            With mSPRTUP
                Dim x As Integer = .SplitterDistance
                Dim xxx As Integer = .ClientRectangle.Width * 0.5
                K編集.CellEnabledByIndex(n) = Not ((x > xxx * 0.95) And (x < xxx * 1.05))
                K編集.Draw(n)
            End With
        End If
        n = K編集.CellIndex_By_CellText(ED上下等しい)
        If n > 0 Then
            With mSPRT
                Dim y As Integer = .SplitterDistance
                Dim yyy As Integer = .ClientRectangle.Height * 0.4
                K編集.CellEnabledByIndex(n) = Not ((y > yyy * 0.95) And (y < yyy * 1.05))
                K編集.Draw(n)
            End With
        End If
        mPCTBOX.Refresh()
    End Sub

    Private Sub zzUserBoxPnl_SizeSet()
        Const 枠 As Integer = 5
        Dim x As Integer = KABCD.Left : Dim y As Integer = KABCD.Top
        With mUserBoxPnl
            .SetBounds(x, y, K辞書.Right - x, KABCDBIG.Bottom - y, BoundsSpecified.All)
            Dim w As Integer = .ClientRectangle.Width - (枠 * 4)
            Dim h As Integer = .ClientRectangle.Height - (枠 * 6)
            Dim ww As Integer = w \ 4
            Dim hh As Integer = h \ 6
            Dim t As Integer = 枠
            mUserBoxLbl(1).SetBounds(枠, t, ww, hh, BoundsSpecified.All)
            mUserBoxLbl(2).SetBounds(枠 * 2 + ww, t, ww * 2, hh, BoundsSpecified.All)
            mUserBoxLbl(3).SetBounds(枠 * 3 + ww * 3, t, ww, hh, BoundsSpecified.All)
            t = mUserBoxLbl(3).Bottom + 枠
            mUserBoxLbl(4).SetBounds(枠, t, ww, hh, BoundsSpecified.All)
            mUserBoxLbl(5).SetBounds(枠 * 2 + ww, t, ww * 2, hh, BoundsSpecified.All)
            mUserBoxLbl(6).SetBounds(枠 * 3 + ww * 3, t, ww, hh, BoundsSpecified.All)
            t = mUserBoxLbl(6).Bottom + 枠
            mUserBoxLbl(7).SetBounds(枠, t, ww, hh * 2, BoundsSpecified.All)
            mUserBoxTxt.SetBounds(枠 * 2 + ww, t, ww * 2, hh * 2, BoundsSpecified.All)
            mUserBoxLbl(9).SetBounds(枠 * 3 + ww * 3, t, ww, hh * 2, BoundsSpecified.All)
            t = mUserBoxLbl(9).Bottom + 枠
            mUserBoxLbl(10).SetBounds(枠, t, ww, hh, BoundsSpecified.All)
            mUserBoxLbl(11).SetBounds(枠 * 2 + ww, t, ww * 2, hh, BoundsSpecified.All)
            mUserBoxLbl(12).SetBounds(枠 * 3 + ww * 3, t, ww, hh, BoundsSpecified.All)
            t = mUserBoxLbl(12).Bottom + 枠
            mUserBoxLbl(13).SetBounds(枠, t, ww, hh, BoundsSpecified.All)
            mUserBoxLbl(14).SetBounds(枠 * 2 + ww, t, ww * 2, hh, BoundsSpecified.All)
            mUserBoxLbl(15).SetBounds(枠 * 3 + ww * 3, t, ww, hh, BoundsSpecified.All)
            With mUserBoxTxt
                x = aao選択枠InUserPnl.LineWidth
                aao選択枠InUserPnl.aa_位置サイズ_Set(.Left - x, .Top - x, .Width + x + x, .Height + x + x)
            End With
        End With
    End Sub
    Private Sub zzUserBoxPnl_AllClear()
        If mlblUSER.Visible Then mlblUSER.Text = ""
        If mUserBoxPnl.Visible Then
            mUserBoxTxt.Text = ""
            For a As Integer = 1 To UBound(mUserBoxLbl)
                If Not mUserBoxLbl(a) Is Nothing Then mUserBoxLbl(a).Text = ""
            Next
        End If
    End Sub
    Friend Sub btnUser_Click()
        mUserBoxPnlSHOW = Not mUserBoxPnlSHOW
        If Not mUserBoxPnlSHOW And mUserBoxPnl.Visible Then mUserBoxPnl.Visible = False
    End Sub
    Friend Sub btnUser_MouseEnter()
        If mUserBoxPnl.Visible Then Call zzUserBoxPnl_AllClear()
    End Sub
#End Region

#Region "プロパティ　　メソッド"
    Friend Function BtnsText改行コード文字() As String
        Return clsPatapata.c改行コード文字
    End Function
    Private mReSizeCallOK As Boolean = False
    Public Property aapReSizeCallOK() As Boolean
        Get
            Return mReSizeCallOK
        End Get
        Set(ByVal Value As Boolean)
            mReSizeCallOK = Value
        End Set
    End Property
    Private mBackColorMain As Integer = &HFFFFFF&
    Property BackColorMain() As Color
        Get
            Return ColorTranslator.FromWin32(mBackColorMain)
        End Get
        Set(ByVal value As Color)
            Dim c As Integer = ColorTranslator.ToWin32(value)
            If mBackColorMain = c Then Return
            mBackColorMain = c
            K編集.BackColorMain = value
            KUSER.BackColorMain = value
            K辞書漢字CHG.BackColorMain = value
            K辞書.BackColorMain = value
            K漢字.BackColorMain = value
            Kひらかな.BackColorMain = value
            Kカタカナ.BackColorMain = value
            KABCDBIG.BackColorMain = value
            KABCD.BackColorMain = value
            If Not mUserBoxPnl Is Nothing Then mUserBoxPnl.BackColor = value
            If Not mPCTBOX Is Nothing Then mPCTBOX.TopLevelControl.BackColor = value
        End Set
    End Property
    Private mForeColorMain As Integer = &H0&
    Property ForeColorMain() As Color
        Get
            Return ColorTranslator.FromWin32(mForeColorMain)
        End Get
        Set(ByVal value As Color)
            Dim c As Integer = ColorTranslator.ToWin32(value)
            If mForeColorMain = c Then Return
            If Not mUserBoxPnl Is Nothing Then mUserBoxPnl.ForeColor = value
            If Not mPCTBOX Is Nothing Then mPCTBOX.TopLevelControl.ForeColor = value
        End Set
    End Property
    Private mDrawEnabled As Boolean = False
    Public Property DrawEnabled() As Boolean
        Get
            Return mDrawEnabled
        End Get
        Set(ByVal Value As Boolean)
            mDrawEnabled = Value
        End Set
    End Property
    Public Property aap選択枠Show() As Boolean
        Get
            Return aao選択枠.Visible
        End Get
        Set(ByVal Value As Boolean)
            aao選択枠.Visible = Value
        End Set
    End Property
    Public Sub aaf選択枠サイズセット_KUSER(ByVal CellX As Integer, ByVal CellY As Integer, ByVal 改行付き文 As String)
        If Not aap選択枠Show Then Return
        With KUSER
            Dim CellIdx As Integer
            If DlgUserBtnTextSet IsNot Nothing Then
                CellIdx = DlgUserBtnTextSet.aaCurCellIndex(0, 0)
            ElseIf DlgUserBtnTextAllSet IsNot Nothing Then
                If CellX = 0 Then
                    If Not DlgUserBtnTextAllSet.CurCellIndex_Column_Row_Base0(CellX, CellY) Then Return
                    CellX += 1 : CellY += 1
                End If
                CellIdx = .CellIndex_By_Column_Row_Base1(CellX, CellY)
                If 改行付き文 <> "" Then
                    'mUserCurText.Text = 改行付き文
                    mUserBoxTxt.Text = 改行付き文
                End If
            Else
                Return
            End If
            If CellIdx = 0 Then
                qqqqq("errin aaf選択枠サイズセット_KUSER()")
                Return 'Error
            End If
            Dim n As Integer = 3
            aao選択枠.aa_位置サイズ_Set(.CellLeftByIndex(CellIdx) - n, .CellTopByIndex(CellIdx) - n, .CellWidth + n + n, .CellHeight + n + n, n)
        End With
    End Sub

    Public Sub aaf選択枠サイズセット_STD_KEYS(ByVal BtnsKey As String, ByVal CellX As Integer, ByVal CellY As Integer)
        If Not aap選択枠Show Then Return
        Dim w文字データーすべて As String = ""
        Dim Btns As clsButtons = zzButtonsObj(BtnsKey, w文字データーすべて)
        If Btns Is Nothing Then Return
        With Btns
            Dim CellIdx As Integer
            If DlgStdBtnAllSet IsNot Nothing Then
                If CellX = 0 Then
                    If Not DlgStdBtnAllSet.CurCellIndex_Column_Row_Base0(CellX, CellY) Then Return
                    CellX += 1 : CellY += 1
                End If
                CellIdx = .CellIndex_By_Column_Row_Base1(CellX, CellY)
            Else
                Return
            End If
            If CellIdx = 0 Then Return
            Dim n As Integer = 3
            aao選択枠.aa_位置サイズ_Set(.CellLeftByIndex(CellIdx) - n, .CellTopByIndex(CellIdx) - n, .CellWidth + n + n, .CellHeight + n + n, n)
        End With
    End Sub

    Public Function aaUserKeyCurColorGET(ByRef wUB As Color, ByRef wUF As Color) As Boolean
        With KUSER
            wUB = .BackColorUP : wUF = .ForeColorUP
        End With
        Return True
    End Function

#End Region

#Region "PCTBOX イベント"
    '***********************************************************************************************
    Friend Sub PCTBOX_DragOver(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs)
        Dim wPPP As POINTAPI, wPOS As Point
        gggbol = Ⅹ現在のマウスポイント(mPCTBOX, wPPP, wPOS)
        Dim btns As clsButtons = zzBtnsCurrent(wPOS.X, wPOS.Y)
        If btns Is KUSER Then
            Call btns.PCTBOX_DragOver(sender, e)
        Else
            e.Effect = DragDropEffects.None
        End If
    End Sub
    Friend Sub PCTBOX_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs)
        Dim wPPP As POINTAPI, wPOS As Point
        gggbol = Ⅹ現在のマウスポイント(mPCTBOX, wPPP, wPOS)
        Dim btns As clsButtons = zzBtnsCurrent(wPOS.X, wPOS.Y)
        If btns Is KUSER Then Call btns.PCTBOX_DragDrop(sender, e)
    End Sub
    '***********************************************************************************************
    Private mMoseDown現在 As clsButtons = Nothing
    Private mPCTBOX_MouseRightDown As Boolean = False
    Friend Sub PCTBOX_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        Dim x As Integer = e.X : Dim y As Integer = e.Y
        mMoseDown現在 = zzBtnsCurrent(x, y)
        '--------------------------------------------------------------
        If mMoseDown現在 IsNot Nothing Then
            '--------------------------------------------------------------
            Dim btns As clsButtons = mMoseDown現在
            Dim a As Integer = btns.CellIndexByXY(x, y, False)
            If Not DlgUserBtnTextSet Is Nothing Then
                With DlgUserBtnTextSet
                    If btns.BtnIsUserText Then
                        If a > 0 Then
                            If a = 1 Or a = 100 Or a = 200 Then
                                Call AppfMyBeep() '改行ボタン
                            Else
                                If .radボタンから読み込み.Checked Then
                                    Dim cap As String = ⅩStrChgOldStrNewStr(btns.CellButtonText(a), "~", vbCrLf)      ' CellButtonText(a)
                                    .UserTextBox.Text = cap
                                ElseIf .radボタンに書き込み.Checked Then
                                    Dim cap As String = ⅩStrChgOldStrNewStr(Trim(.aaTextCurrent), vbCrLf, "~")   ' Trim(.aaTextCurrent)
                                    gggbol = btns.UserKeyText_NewSet(a, cap)
                                Else
                                    Call AppfMyBeep()
                                End If
                            End If
                        End If
                    End If
                End With
                Return
            End If
            '--------------------------------------------------------------
            If Not DlgColorSet Is Nothing Then
                If a = 0 Then Return
                If DlgColorSet.aaボタンクリックできる状態です Then
                    'no op
                Else
                    Dim wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN As Integer
                    If gggDlgColor_BtnCurReading = 2 Then
                        If btns.CellColorExUsing(a) Then
                            gggbol = btns.CellColorExGetSet(0, a, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN, False)
                            DlgColorSet.aaGet_CurRead_CurColors_個別色(wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN)
                        Else
                            Call AppfMyBeep()
                            Call DlgColorSet.aaErrorClick_Not_CellColorExUsing()
                        End If
                    Else
                        Dim wCurMode_RetDef_0_SetCustm_1 As Integer
                        If True = DlgColorSet.aaGet_CurSetMode_CurColors(wCurMode_RetDef_0_SetCustm_1, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN) Then
                            If wCurMode_RetDef_0_SetCustm_1 = 0 Then
                                gggbol = btns.CellColorExGetSet(1, a, -1, -1, -1, -1, False)
                            Else
                                gggbol = btns.CellColorExGetSet(1, a, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN, False)
                            End If
                            gggbol = btns.Draw(a)
                            mPCTBOX.Refresh()
                        End If
                    End If
                    gggDlgColor_BtnCurReading = 0
                    Return
                End If
            End If
            '--------------------------------------------------------------
            mPCTBOX_MouseRightDown = (e.Button = MouseButtons.Right)
            Call mMoseDown現在.PCTBOX_MouseDown(sender, e)
            '--------------------------------------------------------------
        End If
    End Sub
    Friend Sub PCTBOX_MouseLeave()
        '2024/03/21  謎のエラーが見つかった。
        'aao選択枠 にマウスポイントが入ると、一瞬このイベントが発生する。
        'それが原因で、一瞬　mUserBoxPnl.Visible = False　になり、画面がちらつく。
        'aao選択枠 As 五clsWakuwaku のラベル群すべてに　Enabled = False　を設定してこのエラーは解決した。　　
        Static m As Integer
        m += 1
        If m Mod 10 = 0 Then
            'qqqqq("PCTBOX_MouseLeave")
        End If
        mUserBoxPnl.Visible = False : mlblUSER.Visible = False
    End Sub
    Friend Sub PCTBOX_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        'Static oldmUserBoxPnl_Visible As Boolean
        'Static mmm As Integer
        'If oldmUserBoxPnl_Visible <> mUserBoxPnl.Visible Then
        '    qqqqq("   oldmUserBoxPnl_Visible <> mUserBoxPnl.Visible")
        '    mmm = mmm + 1
        '    If mmm Mod 10 = 0 Then
        '        qqqqq(" mmm Mod 10 = 0 ")
        '    End If
        'End If
        If mUserBoxPnl Is Nothing Then Return
        If mlblUSER Is Nothing Then Return
        If mPCTBOX_MouseRightDown Then Return
        If mMoseDown現在 IsNot Nothing Then Return
        Dim btns As clsButtons = zzBtnsCurrent(e.X, e.Y)
        If btns Is Nothing Then
            'qqqqq("btns Is Nothing")
            mUserBoxPnl.Visible = False : mlblUSER.Visible = False : Return
        End If
        If Not btns.BtnIsUserText Then
            'qqqqq("Not btns.BtnIsUserText")
            mUserBoxPnl.Visible = False : mlblUSER.Visible = False : Return
        End If
        Dim ShowOK As Boolean = (DlgColorSet Is Nothing) And (DlgUserBtnTextAllSet Is Nothing) And (DlgStdBtnAllSet Is Nothing)
        If Not ShowOK Then
            'qqqqq("Not ShowOK")
            mUserBoxPnl.Visible = False : mlblUSER.Visible = False : Return
        End If
        Dim CellIndex As Integer = btns.CellIndexByXY(e.X, e.Y, True)
        If Not DlgUserBtnTextSet Is Nothing Then
            'qqqqq(CStr(CellIndex))
            gggint = DlgUserBtnTextSet.aaCurCellIndex(1, CellIndex)
            Call aaf選択枠サイズセット_KUSER(0, 0, "")
        End If
        mUserBoxPnl.Visible = mUserBoxPnlSHOW
        If mUserBoxPnl.Visible Then
            With mUserBoxTxt
                .BackColor = btns.BackColorUP : .ForeColor = btns.ForeColorUP
                Dim sss As String = AppBas.Appf改行コード変換文(1, btns.CellButtonText(CellIndex))
                If .Text <> sss Then .Text = sss
            End With
            Call zzUserBoxLblSetText(btns, 1, CellIndex - 21) : Call zzUserBoxLblSetText(btns, 2, CellIndex - 20) : Call zzUserBoxLblSetText(btns, 3, CellIndex - 19)
            Call zzUserBoxLblSetText(btns, 4, CellIndex - 11) : Call zzUserBoxLblSetText(btns, 5, CellIndex - 10) : Call zzUserBoxLblSetText(btns, 6, CellIndex - 9)
            Call zzUserBoxLblSetText(btns, 7, CellIndex - 1) : Call zzUserBoxLblSetText(btns, 9, CellIndex + 1)
            Call zzUserBoxLblSetText(btns, 10, CellIndex + 9) : Call zzUserBoxLblSetText(btns, 11, CellIndex + 10) : Call zzUserBoxLblSetText(btns, 12, CellIndex + 11)
            Call zzUserBoxLblSetText(btns, 13, CellIndex + 19) : Call zzUserBoxLblSetText(btns, 14, CellIndex + 20) : Call zzUserBoxLblSetText(btns, 15, CellIndex + 21)
        Else
            'qqqqq("mUserBoxPnl.Visible = False")
        End If
        mlblUSER.Visible = Not mUserBoxPnlSHOW
        If mlblUSER.Visible Then
            With mlblUSER
                .BackColor = btns.BackColorUP : .ForeColor = btns.ForeColorUP
                Dim sss As String = btns.CellButtonText(CellIndex)
                If .Text <> sss Then .Text = sss
            End With
        End If
        'oldmUserBoxPnl_Visible = mUserBoxPnl.Visible
    End Sub

    Private Sub zzUserBoxLblSetText(ByVal btns As clsButtons, ByVal LblIndex As Integer, ByVal CellPos As Integer)
        Dim sss As String = ""
        Dim a As Integer = CellPos
        Select Case LblIndex
            Case 1, 4, 7, 10, 13
                If CellPos Mod 10 = 0 Then a = 0
            Case 3, 6, 9, 12, 15
                If CellPos Mod 10 = 1 Then a = 0
        End Select
        If a < 1 Or a > btns.CellCount Then
            sss = ""
        Else
            sss = AppBas.Appf改行コード変換文(1, btns.CellButtonText(a))
        End If
        If Not mUserBoxLbl(LblIndex) Is Nothing Then
            With mUserBoxLbl(LblIndex)
                If .Text <> sss Then .Text = sss
            End With
        End If
    End Sub
    Friend Sub PCTBOX_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        If mMoseDown現在 IsNot Nothing Then
            If mPCTBOX_MouseRightDown And (e.Button = MouseButtons.Right) Then
                Dim SendVbCrLf As Boolean = True
                If mMoseDown現在 Is K編集 Then
                ElseIf mMoseDown現在 Is KABCD Then
                ElseIf mMoseDown現在 Is KABCDBIG Then
                ElseIf mMoseDown現在 Is Kひらかな Then
                ElseIf mMoseDown現在 Is Kカタカナ Then
                ElseIf mMoseDown現在 Is KUSER Then
                Else
                    SendVbCrLf = False
                End If
                If SendVbCrLf Then
                    mTBOX.SelectedText = vbCrLf
                End If
            Else
                If DlgUserBtnTextSet Is Nothing Then
                    If DlgColorSet Is Nothing Then
                        Call mMoseDown現在.PCTBOX_MouseUp(sender, e)
                    End If
                End If
                If Not DlgColorSet Is Nothing Then
                    If DlgColorSet.aaボタンクリックできる状態です Then
                        Call mMoseDown現在.PCTBOX_MouseUp(sender, e)
                    End If
                End If
            End If
        End If
        mMoseDown現在 = Nothing
        mPCTBOX_MouseRightDown = False
    End Sub
    Private Function zzBtnsCurrent(ByVal x As Integer, ByVal y As Integer) As clsButtons
        If K編集.IsInSide(x, y) Then
            Return K編集
        ElseIf KABCD.IsInSide(x, y) Then
            Return KABCD
        ElseIf KABCDBIG.IsInSide(x, y) Then
            Return KABCDBIG
        ElseIf K辞書漢字CHG.IsInSide(x, y) Then
            Return K辞書漢字CHG
        ElseIf K辞書.IsInSide(x, y) Then
            Return K辞書
        ElseIf K漢字.IsInSide(x, y) Then
            Return K漢字
        ElseIf Kひらかな.IsInSide(x, y) Then
            Return Kひらかな
        ElseIf Kカタカナ.IsInSide(x, y) Then
            Return Kカタカナ
        ElseIf KUSER.IsInSide(x, y) Then
            Return KUSER
        Else
            Return Nothing
        End If
    End Function
    Private Function zzBtnsCurrent(ByVal name As String) As clsButtons
        If name = K編集str Then
            Return K編集
        ElseIf name = KABCDstr Then
            Return KABCD
        ElseIf name = KABCDBIGstr Then
            Return KABCDBIG
        ElseIf name = K辞書漢字CHGstr Then
            Return K辞書漢字CHG
        ElseIf name = K辞書str Then
            Return K辞書
        ElseIf name = K漢字str Then
            Return K漢字
        ElseIf name = Kひらかなstr Then
            Return Kひらかな
        ElseIf name = Kカタカナstr Then
            Return Kカタカナ
        ElseIf name = KUSERstr Then
            Return KUSER
        Else
            Return Nothing
        End If
    End Function

#End Region

#Region "KUSER_KABCD_Kカタカナ.....BtnClick() イベント"
    Private Function zzStrChgToVbCrLf(ByVal sss As String, ByVal 文末の改行を削除 As Boolean) As String
        Dim w As String = ⅩStrChgOldStrNewStr(sss, "~", vbCrLf)
        If 文末の改行を削除 Then
            Do While Right(w, 2) = vbCrLf
                w = ⅩVBStrLeft(w, Len(w) - 2)
            Loop
        End If
        Return w
    End Function
    Private Sub KUSER_BtnClick(ByVal Index As Integer, ByVal BtnText As String) Handles KUSER.BtnClick, KABCD.BtnClick, KABCDBIG.BtnClick, Kカタカナ.BtnClick, Kひらかな.BtnClick
        'qqqqq("KUSER_KABCD_Kカタカナ.....BtnClick()")
        Dim w As String = BtnText 'Trim(BtnText)
        If w <> "" Then
            Dim sss As String = zzStrChgToVbCrLf(w, False)
            If mTBOX.Visible Then mTBOX.SelectedText = sss
            'RaiseEvent BtnCharClick(Index, sss)
        End If
    End Sub
    Private Sub K編集_BtnClick(ByVal Index As Integer, ByVal BtnText As String) Handles K編集.BtnClick
        Try
            mTBOX.Focus()
            Select Case BtnText
                Case EDRET
                    mTBOX.SelectedText = vbCrLf
                Case EDIME
                    If mTBOX.ImeMode <> ImeMode.Hiragana Then mTBOX.ImeMode = ImeMode.Hiragana Else mTBOX.ImeMode = ImeMode.Off
                    RaiseEvent IMEChangedByBtnClick(mTBOX.ImeMode)
                Case EDBS
                    mTBOX.Focus() : My.Computer.Keyboard.SendKeys("{BS}", True)
                Case EDDEL
                    mTBOX.Focus() : My.Computer.Keyboard.SendKeys("{DEL}", True)
                Case EDBack ' "←"
                    mTBOX.Focus() : My.Computer.Keyboard.SendKeys("{LEFT}", True)
                Case EDNext ' "→"
                    mTBOX.Focus() : My.Computer.Keyboard.SendKeys("{RIGHT}", True)
                Case EDコピー
                    If mTBOX.Text <> "" Then
                        My.Computer.Clipboard.Clear() : My.Computer.Clipboard.SetText(mTBOX.Text)
                    End If
                Case EDクリア
                    mTBOX.Text = ""
                Case ED左右等しい
                    Try
                        With mSPRTUP
                            .SplitterDistance = .ClientRectangle.Width * 0.5
                        End With
                    Catch ex As Exception
                    End Try
                Case ED左右ズーム
                    Try
                        With mSPRTUP
                            Dim w As Single = .ClientRectangle.Width
                            Dim n As Single = .SplitterDistance / w
                            Select Case n
                                Case Is <= 0.5
                                    .SplitterDistance = w * 0.8
                                Case Else
                                    .SplitterDistance = w * 0.2
                            End Select
                        End With
                    Catch ex As Exception
                    End Try
                Case ED上下等しい
                    Try
                        With mSPRT
                            .SplitterDistance = .ClientRectangle.Height * 0.4
                        End With
                    Catch ex As Exception
                    End Try
                Case ED上下ズーム
                    Try
                        With mSPRT
                            Dim h As Single = .ClientRectangle.Height
                            Dim n As Single = .SplitterDistance / h
                            Select Case n
                                Case Is <= 0.4
                                    .SplitterDistance = h * 0.55
                                Case Else
                                    .SplitterDistance = h * 0.2
                            End Select
                        End With
                    Catch ex As Exception
                    End Try
                Case Else
                    Dim s As String
                    s = BtnText
                    If s = "半角" Then s = " "
                    If s = "全角" Then s = "　"
                    mTBOX.SelectedText = s
            End Select
            RaiseEvent BtnEditClick(BtnText)
        Catch ex As Exception
            Return
        End Try
    End Sub
    Private Sub zzK辞書_K漢字_mJiKeyLbl_ColorCgange_ListBoxs_ColorSet()
        Dim cb As Color = K辞書.BackColorUP : Dim cf As Color = K辞書.ForeColorUP
        mJiLISTBOX.BackColor = cb : mJiLISTBOX.ForeColor = cf
        mJiKeyLbl.BackColor = cb : mJiKeyLbl.ForeColor = cf
        mJiHisList.BackColor = cb : mJiHisList.ForeColor = cf
        mKanLISTBOX.BackColor = K漢字.BackColorUP : mKanLISTBOX.ForeColor = K漢字.ForeColorUP
    End Sub
    Private Sub K辞書漢字CHG_BtnStaticClick(ByVal Index As Integer, ByVal BtnText As String) Handles K辞書漢字CHG.BtnStaticClick
        Call K辞書漢字_ChangeSet()
    End Sub
    Friend Sub btnJiKanListChg_Click()
        Dim newidx As Integer = K辞書漢字CHG.BtnIsStatic_OneSelect_CurIndex
        newidx = IIf(newidx = 1, 2, 1)
        K辞書漢字CHG.ButtonPushUpDown(newidx) = True
        Call K辞書漢字_ChangeSet()
    End Sub
    Private Sub K辞書漢字_ChangeSet()
        Dim newidx As Integer = K辞書漢字CHG.BtnIsStatic_OneSelect_CurIndex
        Dim v As Boolean
        v = (newidx = 1)
        K辞書.Visible = v : K辞書.DrawEnable = True : K漢字.Visible = Not v : K漢字.DrawEnable = True
        mJiKeyLblClear.Visible = v : mJiKeyLblEdit.Visible = v : mJiKeyLbl.Visible = v
        If v Then
            K漢字.Draw(0) : K辞書.Draw(0)
        Else
            K辞書.Draw(0) : K漢字.Draw(0)
        End If
        mJiLISTBOX.Visible = v : mKanLISTBOX.Visible = Not v
        mJiHisBtn.Visible = mJiKeyLbl.Visible
        mJiHisList.Visible = mJiHisList.Visible And v
        mPCTBOX.Refresh()
    End Sub
    Private Sub K辞書_BtnClick(ByVal Index As Integer, ByVal BtnText As String) Handles K辞書.BtnClick
        mJiKeyLbl.Text = mJiKeyLbl.Text & BtnText
    End Sub
    Private Sub K漢字_BtnClick(ByVal Index As Integer, ByVal BtnText As String) Handles K漢字.BtnClick
        Dim k As String = Trim(BtnText)
        If k = "" Then Return
        For a As Integer = 1 To UBound(m漢字団)
            With m漢字団(a)
                If .key = k Then
                    With mKanLISTBOX
                        .Items.Clear()
                        .ColumnWidth = .Font.Size * 3
                        For b As Integer = 1 To Len(m漢字団(a).漢字列)
                            .Items.Add(Mid(m漢字団(a).漢字列, b, 1)) : .Items.Add("")
                        Next
                    End With
                    Exit For
                End If
            End With
        Next
    End Sub
    Friend Sub JiLISTBOX_MouseClick(ByVal lst As ListBox, ByVal e As System.Windows.Forms.MouseEventArgs)
        Dim s As String = aaggリストボックス_マウスクリックアイテム_文字列(lst, e)
        If s <> "" Then
            mTBOX.SelectedText = s
            Call JiHisListAddItem(mJiKeyLbl.Text)
        End If
    End Sub
    Private mJiLISTBOX_MouseRightDown As Boolean = False
    Friend Sub JiLISTBOX_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        If mTBOX Is Nothing Then Return
        mJiLISTBOX_MouseRightDown = (e.Button = MouseButtons.Right)
    End Sub
    Friend Sub JiLISTBOX_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        If mTBOX Is Nothing Then Return
        If mJiLISTBOX_MouseRightDown And (e.Button = MouseButtons.Right) Then mTBOX.SelectedText = vbCrLf
        mJiLISTBOX_MouseRightDown = False
    End Sub
    Friend Sub KanLISTBOX_MouseClick(ByVal lst As ListBox, ByVal e As System.Windows.Forms.MouseEventArgs)
        Dim s As String = aaggリストボックス_マウスクリックアイテム_文字列(lst, e)
        If s <> "" Then mTBOX.SelectedText = s
    End Sub
    Private mKanLISTBOX_MouseRightDown As Boolean = False
    Friend Sub KanLISTBOX_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        If mTBOX Is Nothing Then Return
        mKanLISTBOX_MouseRightDown = (e.Button = MouseButtons.Right)
    End Sub
    Friend Sub KanLISTBOX_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        If mTBOX Is Nothing Then Return
        If mKanLISTBOX_MouseRightDown And (e.Button = MouseButtons.Right) Then mTBOX.SelectedText = vbCrLf
        mKanLISTBOX_MouseRightDown = False
    End Sub
#End Region

#Region "New... Menu... イベント"
    Public Sub New()
        mMenu = New ContextMenuStrip
        '2024/05/11 new add --------------------------------------------------------------
        mnuフォームサイズ最大化 = mMenu.Items.Add("■　最大化 (&3)", Nothing, New EventHandler(AddressOf 最大化_Click))
        mnuフォームサイズ標準化 = mMenu.Items.Add("●　標準化 (&2)", Nothing, New EventHandler(AddressOf 標準化_Click))
        mnuフォームサイズ最小化 = mMenu.Items.Add("▼　最小化 (&1)", Nothing, New EventHandler(AddressOf 最小化_Click))
        mMenu.Items.Add(New ToolStripSeparator)
        '---------------------------------------------------------------------------------
        mnuユーザーボタン文字の設定 = mMenu.Items.Add("ユーザーボタン文字の設定 (&U) ...", Nothing, New EventHandler(AddressOf ユーザーボタン文字の設定_Click))
        mnuユーザーボタン文字をまとめて設定 = mMenu.Items.Add("ユーザーボタン文字をまとめて設定 (&W) ...", Nothing, New EventHandler(AddressOf ユーザーボタン文字をまとめて設定_Click))
        mMenu.Items.Add(New ToolStripSeparator)
        mnu基本ボタン群の再設定 = mMenu.Items.Add("基本ボタン群の再設定 (&R) ...", Nothing, New EventHandler(AddressOf 基本ボタン群の再設定_Click))
        mnuボタンの位置を変更 = mMenu.Items.Add("ボタンの位置を変更 (&S) ...", Nothing, New EventHandler(AddressOf ボタンの位置を変更_Click))
        mMenu.Items.Add(New ToolStripSeparator)
        '---------------------------------------------------------------------------------
        mnu色の設定 = mMenu.Items.Add("色の設定 (&C) ...", Nothing, New EventHandler(AddressOf 色の設定_Click))
        mnuフォントの設定 = mMenu.Items.Add("フォントの設定 (&F) ...", Nothing, New EventHandler(AddressOf フォントの設定_Click))
        mMenu.Items.Add(New ToolStripSeparator)
        '---------------------------------------------------------------------------------
        mMenu.Items.Add("辞書フォルダーを表示 (&D)", Nothing, New EventHandler(AddressOf 辞書フォルダーを表示_Click))
        mMenu.Items.Add(New ToolStripSeparator)
        '---------------------------------------------------------------------------------
        mMenu.Items.Add("ヘルプ (&H) ...", Nothing, New EventHandler(AddressOf ヘルプ_Click))
        mMenu.Items.Add("バージョン情報 (&A) ...", Nothing, New EventHandler(AddressOf バージョン情報_DlgShow_Click))
        mMenu.Items.Add(New ToolStripSeparator)
        mMenu.Items.Add("終了 (&X)", Nothing, New EventHandler(AddressOf 終了_Click))
        JISHO = New clsJisho
    End Sub
    Protected Overrides Sub Finalize()
        MyBase.Finalize()
    End Sub

    Friend Sub btnMENU_Click()
        If mPCTBOX Is Nothing Then Return
        mTBOX.ImeMode = ImeMode.Off
        mbtnMENU.ContextMenuStrip = mMenu
        Dim pt As Point
        pt.X = mPCTBOX.Left
        pt.Y = mPCTBOX.Top
        mMenu.Show(mPCTBOX.Parent, pt)
        mPCTBOX.ContextMenuStrip = Nothing
    End Sub

    Private Sub mMenu_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles mMenu.Opening
        If (DlgUserBtnTextSet Is Nothing) And (DlgUserBtnTextAllSet Is Nothing) And (DlgStdBtnAllSet Is Nothing) Then
            aap選択枠Show = False
        End If
        mnu色の設定.Enabled = (DlgColorSet Is Nothing)
        mnuフォントの設定.Enabled = (DlgListFont Is Nothing)
        mnuユーザーボタン文字の設定.Enabled = (DlgUserBtnTextSet Is Nothing)
        mnuユーザーボタン文字をまとめて設定.Enabled = (DlgUserBtnTextAllSet Is Nothing)
        mnu基本ボタン群の再設定.Enabled = (DlgStdBtnAllSet Is Nothing)
        mnuボタンの位置を変更.Enabled = (DlgBtnsPosSet Is Nothing) And (mPCTBOX.Width >= 1000) And (mPCTBOX.Height >= 440)
        RaiseEvent イベント_メインフォームのサイズメニュー_Op(0, FormWindowState.Normal, mnuフォームサイズ最大化, mnuフォームサイズ標準化, mnuフォームサイズ最小化)
    End Sub

    Private mnuフォームサイズ最大化 As ToolStripMenuItem, mnuフォームサイズ標準化 As ToolStripMenuItem, mnuフォームサイズ最小化 As ToolStripMenuItem
    Private Sub 最大化_Click(ByVal sender As Object, ByVal e As EventArgs)
        RaiseEvent イベント_メインフォームのサイズメニュー_Op(1, FormWindowState.Maximized, Nothing, Nothing, Nothing)
    End Sub
    Private Sub 標準化_Click(ByVal sender As Object, ByVal e As EventArgs)
        RaiseEvent イベント_メインフォームのサイズメニュー_Op(1, FormWindowState.Normal, Nothing, Nothing, Nothing)
    End Sub
    Private Sub 最小化_Click(ByVal sender As Object, ByVal e As EventArgs)
        RaiseEvent イベント_メインフォームのサイズメニュー_Op(1, FormWindowState.Minimized, Nothing, Nothing, Nothing)
    End Sub

    Private mnu色の設定 As ToolStripMenuItem
    Private Sub 色の設定_Click(ByVal sender As Object, ByVal e As EventArgs)
        Call DlgCloseIF(DlgColorSet)
        If DlgColorSet Is Nothing Then
            DlgColorSet = New frmDlgColorSet
            If Not DlgColorSet.aaダイアログ_色設定_Show0(gggAppMainForm) Then
                If DlgColorSet IsNot Nothing Then DlgColorSet.Dispose()
                DlgColorSet = Nothing
            End If
        End If
    End Sub

    Private mnuフォントの設定 As ToolStripMenuItem
    Private Sub フォントの設定_Click(ByVal sender As Object, ByVal e As EventArgs)
        Call DlgCloseIF(DlgListFont)
        If DlgListFont Is Nothing Then
            DlgListFont = New frmDlgListFont
            DlgListFont.aaダイアログ_フォント設定_Show0(gggAppMainForm, "フォントの設定", -1, -1)
        End If
    End Sub

    Private mnuユーザーボタン文字の設定 As ToolStripItem
    Private Sub ユーザーボタン文字の設定_Click(ByVal sender As Object, ByVal e As EventArgs)
        Call DlgCloseIF(DlgUserBtnTextSet)
        If DlgUserBtnTextSet Is Nothing Then
            DlgUserBtnTextSet = New frmDlgUserBtnOneSet
            Dim wUB, wUF As Color
            gggbol = aaUserKeyCurColorGET(wUB, wUF)
            Call DlgUserBtnTextSet.aaユーザーテキストを設定_Show0(gggAppMainForm, clsButtons.cボタンテキストMax, wUB, wUF)
        End If
    End Sub

    Private mnuユーザーボタン文字をまとめて設定 As ToolStripMenuItem
    Private Sub ユーザーボタン文字をまとめて設定_Click(ByVal sender As Object, ByVal e As EventArgs)
        Call DlgCloseIF(DlgUserBtnTextAllSet)
        If DlgUserBtnTextAllSet Is Nothing Then
            DlgUserBtnTextAllSet = New frmDlgUserBtnAllSet
            Dim CutStr As String = clsButtons.CutStr
            Dim BtnsTextAll As String = KUSER.AllButtonText
            DlgUserBtnTextAllSet.Dlg_LoadShow0(gggAppMainForm, clsButtons.cボタンテキストMax, BtnsTextAll, CutStr)
        End If
    End Sub

    Private mnu基本ボタン群の再設定 As ToolStripItem
    Private Sub 基本ボタン群の再設定_Click(ByVal sender As Object, ByVal e As EventArgs)
        Call DlgCloseIF(DlgStdBtnAllSet)
        If DlgStdBtnAllSet Is Nothing Then
            DlgStdBtnAllSet = New frmDlgStdBtnAllSet
            Dim CutStr As String = clsButtons.CutStr
            DlgStdBtnAllSet.Dlg_LoadShow0(gggAppMainForm, cABCD半角, cABCD全角, cひらかな, cカタカナ, mABCD半角TextsDEF, mABCD全角TextsDEF, mひらかなTextsDEF, mカタカナTextsDEF)
        End If
    End Sub

    Private Sub DlgCloseIF(ByVal Dlg除外 As Form)
        Call DlgCloseIF_SUB(Dlg除外, DlgColorSet)
        Call DlgCloseIF_SUB(Dlg除外, DlgListFont)
        Call DlgCloseIF_SUB(Dlg除外, DlgUserBtnTextSet)
        Call DlgCloseIF_SUB(Dlg除外, DlgUserBtnTextAllSet)
        Call DlgCloseIF_SUB(Dlg除外, DlgStdBtnAllSet)
        Call DlgCloseIF_SUB(Dlg除外, DlgBtnsPosSet)
        mJiHisList.Visible = False
    End Sub
    Private Sub DlgCloseIF_SUB(ByVal Dlg除外 As Form, ByVal DlgUnLoadすべし As Form)
        If Not (Dlg除外 Is DlgUnLoadすべし) Then
            If Not (DlgUnLoadすべし Is Nothing) Then DlgUnLoadすべし.Close()
        End If
    End Sub
    Private Sub ヘルプ_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim f As String = 絶対パス_AppPathCurSubFolder("ヘルプファイル") & "\Patapataメインヘルプ.html"
        f = Ⅹファイルの絶対パス(f)
        If Ⅹファイルは存在(f) Then
            Try
                gggbol = ⅩFileRunOrFolderShow(CInt(mPCTBOX.TopLevelControl.Handle), 0, f)
            Catch ex As Exception
            End Try
        Else
            MsgBox(f & vbCrLf & vbCrLf & "ヘルプファイルが存在しません")
        End If
    End Sub
    Private Sub 辞書フォルダーを表示_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim f As Form = mSPRT.TopLevelControl
        If f Is Nothing Then Return
        gggbol = ⅩFileRunOrFolderShow(f.Handle.ToInt32, 4, JISHO.JishoFileFolder)
    End Sub
    Private Sub バージョン情報_DlgShow_Click(ByVal sender As Object, ByVal e As EventArgs)
        RaiseEvent イベント_バージョン情報_DlgShow_Click()
    End Sub
    Private Sub 終了_Click(ByVal sender As Object, ByVal e As EventArgs)
        RaiseEvent イベント_終了_Click()
    End Sub
#End Region

#Region "mnuボタンの位置を変更"
    Private mnuボタンの位置を変更 As ToolStripItem
    Private Sub ボタンの位置を変更_Click(ByVal sender As Object, ByVal e As EventArgs)
        Call DlgCloseIF(DlgBtnsPosSet)
        If DlgBtnsPosSet Is Nothing Then
            gggint = aafボタンデーターの設定変更(0, 0, 0, 0, Nothing, "")
            DlgBtnsPosSet = New frmDlgBtnsPosSet
            Dim CutStr As String = clsButtons.CutStr
            Dim X As Integer = Kひらかな.Right + 2
            Dim Y As Integer = K編集.Bottom + 2
            Dim WD As Integer = KUSER.Left - X - 2
            Dim HT As Integer = KUSER.Bottom + 5 - Y
            DlgBtnsPosSet.Dlg_LoadShow1(gggAppMainForm, mPCTBOX, Me, BackColorMain, X, Y, WD, HT)
        End If
    End Sub
    Friend Function aafボタンデーターの設定変更(ByVal Read0_Write1_MsDn10_MsMv11_MsUp12 As Integer, ByVal x As Integer, ByVal y As Integer, ByRef wBtnGrupIndex As Integer, ByRef wrcag As Rectangle, ByRef wCellText As String) As Integer
        Const arymax As Integer = 6
        Static sary(arymax) As BtnCellDatas
        wCellText = "" : wrcag = Nothing
        Select Case Read0_Write1_MsDn10_MsMv11_MsUp12
            Case 0
                Dim n As Integer = 0
                n += 1 : gggbol = K編集.aafボタンデーターの設定変更(0, sary(n)) : sary(n).NotChgCellIDX1 = 0 : sary(n).NotChgCellIDX2 = 0
                n += 1 : gggbol = KABCD.aafボタンデーターの設定変更(0, sary(n)) : sary(n).NotChgCellIDX1 = 100 : sary(n).NotChgCellIDX2 = 0
                n += 1 : gggbol = KABCDBIG.aafボタンデーターの設定変更(0, sary(n)) : sary(n).NotChgCellIDX1 = 100 : sary(n).NotChgCellIDX2 = 0
                n += 1 : gggbol = Kひらかな.aafボタンデーターの設定変更(0, sary(n)) : sary(n).NotChgCellIDX1 = 100 : sary(n).NotChgCellIDX2 = 0
                n += 1 : gggbol = Kカタカナ.aafボタンデーターの設定変更(0, sary(n)) : sary(n).NotChgCellIDX1 = 100 : sary(n).NotChgCellIDX2 = 0
                n += 1 : gggbol = KUSER.aafボタンデーターの設定変更(0, sary(n)) : sary(n).NotChgCellIDX1 = 100 : sary(n).NotChgCellIDX2 = 200
                Return 1
            Case 100 'End drag ExChange in wBtnGrupIndex  x(DragCur) --> y(Drop Post)  y --> x   'mUserPtr.aafボタンデーターの設定変更(100, x=mCurBtnIDX, y=DropPos, wBtnGrupIndex, , )
                With sary(wBtnGrupIndex)
                    .mChanged = True
                    Dim tt As String = .Cell(y).text : Dim ud As Boolean = .Cell(y).updn : Dim id As Integer = .Cell(y).CellColorIdx : Dim vs As Boolean = .Cell(y).CellVisible : Dim en As Boolean = .Cell(y).CellEnabled
                    .Cell(y).text = .Cell(x).text : .Cell(y).updn = .Cell(x).updn : .Cell(y).CellColorIdx = .Cell(x).CellColorIdx : .Cell(y).CellVisible = .Cell(x).CellVisible : .Cell(y).CellEnabled = .Cell(x).CellEnabled
                    .Cell(x).text = tt : .Cell(x).updn = ud : .Cell(x).CellColorIdx = id : .Cell(x).CellVisible = vs : .Cell(x).CellEnabled = en
                End With
                Return 1
            Case 200 'Changed.. Chk
                Dim n As Integer = 0 : Dim b1, b2, b3, b4, b5, b6 As Boolean
                n += 1 : b1 = K編集.aafボタンデーターの設定変更(1, sary(n))
                n += 1 : b2 = KABCD.aafボタンデーターの設定変更(1, sary(n))
                n += 1 : b3 = KABCDBIG.aafボタンデーターの設定変更(1, sary(n))
                n += 1 : b4 = Kひらかな.aafボタンデーターの設定変更(1, sary(n))
                n += 1 : b5 = Kカタカナ.aafボタンデーターの設定変更(1, sary(n))
                n += 1 : b6 = KUSER.aafボタンデーターの設定変更(1, sary(n))
                Return IIf(b1 Or b2 Or b3 Or b4 Or b5 Or b6, 1, 0)
            Case 300 'Close Dlg Changed.. Draw
                Dim n As Integer = 0 : Dim b1, b2, b3, b4, b5, b6 As Boolean
                n += 1 : b1 = K編集.aafボタンデーターの設定変更(2, sary(n))
                n += 1 : b2 = KABCD.aafボタンデーターの設定変更(2, sary(n))
                n += 1 : b3 = KABCDBIG.aafボタンデーターの設定変更(2, sary(n))
                n += 1 : b4 = Kひらかな.aafボタンデーターの設定変更(2, sary(n))
                n += 1 : b5 = Kカタカナ.aafボタンデーターの設定変更(2, sary(n))
                n += 1 : b6 = KUSER.aafボタンデーターの設定変更(2, sary(n))
                If b1 Then K編集.Draw(0)
                If b2 Then KABCD.Draw(0)
                If b3 Then KABCDBIG.Draw(0)
                If b4 Then Kひらかな.Draw(0)
                If b5 Then Kカタカナ.Draw(0)
                If b6 Then KUSER.Draw(0)
                Me.mPCTBOX.Refresh()
                Return IIf(b1 Or b2 Or b3 Or b4 Or b5 Or b6, 1, 0)
            Case 10 'MouseDown
                Dim Grp As Integer = 0 : Dim b As Integer = aafボタンデーターの設定変更_sub_GetCellIndex(sary, arymax, x, y, Grp)
                If b > 0 Then
                    If b <> sary(Grp).NotChgCellIDX1 And b <> sary(Grp).NotChgCellIDX2 Then
                        'qqqqq(CStr(wBtnGrupIndex) & ", " & CStr(b))
                        If Grp = 6 And b = 1 Then 'User Btns Change Btn
                            'not set 
                        Else
                            wBtnGrupIndex = Grp : wrcag = sary(Grp).Cell(b).rcag : wCellText = sary(Grp).Cell(b).text
                            Return b
                        End If
                    End If
                End If
                wBtnGrupIndex = Grp : wrcag = Nothing : wCellText = ""
                Return 0

                'Case 10 'MouseDown
                '    Dim Grp As Integer = 0 : Dim b As Integer = aafボタンデーターの設定変更_sub_GetCellIndex(sary, arymax, x, y, Grp)
                '    If b > 0 Then
                '        If b <> sary(Grp).NotChgCellIDX1 And b <> sary(Grp).NotChgCellIDX2 Then
                '            wBtnGrupIndex = Grp : wrcag = sary(Grp).Cell(b).rcag : wCellText = sary(Grp).Cell(b).text
                '            Return b
                '        End If
                '    End If
                '    wBtnGrupIndex = Grp : wrcag = Nothing : wCellText = ""
                '    Return 0

            Case 11 'Mouse Move
                Dim Grp As Integer = 0 : Dim b As Integer = aafボタンデーターの設定変更_sub_GetCellIndex(sary, arymax, x, y, Grp)
                If (Grp <> wBtnGrupIndex) Then b = 0
                If b > 0 Then
                    If b <> sary(Grp).NotChgCellIDX1 And b <> sary(Grp).NotChgCellIDX2 Then
                        wrcag = sary(Grp).Cell(b).rcag : wCellText = sary(Grp).Cell(b).text
                        Return b
                    End If
                End If
                wrcag = Nothing : wCellText = ""
                Return 0
            Case 12 'Mouse Up
                Dim Grp As Integer = 0 : Dim b As Integer = aafボタンデーターの設定変更_sub_GetCellIndex(sary, arymax, x, y, Grp)
                If (Grp <> wBtnGrupIndex) Then b = 0
                If b > 0 Then
                    If b <> sary(Grp).NotChgCellIDX1 And b <> sary(Grp).NotChgCellIDX2 Then
                        If Grp = 6 And b = 1 Then 'User Btns Change Btn
                            'not set 
                        Else
                            wrcag = sary(Grp).Cell(b).rcag : wCellText = sary(Grp).Cell(b).text
                            wBtnGrupIndex = Grp
                            Return b
                        End If
                    End If
                End If
                wBtnGrupIndex = 0 : wrcag = Nothing : wCellText = ""
                Return 0

                'Case 12 'Mouse Up
                '    Dim Grp As Integer = 0 : Dim b As Integer = aafボタンデーターの設定変更_sub_GetCellIndex(sary, arymax, x, y, Grp)
                '    If (Grp <> wBtnGrupIndex) Then b = 0
                '    If b > 0 Then
                '        If b <> sary(Grp).NotChgCellIDX1 And b <> sary(Grp).NotChgCellIDX2 Then
                '            wrcag = sary(Grp).Cell(b).rcag : wCellText = sary(Grp).Cell(b).text
                '            wBtnGrupIndex = Grp
                '            Return b
                '        End If
                '    End If
                '    wBtnGrupIndex = 0 : wrcag = Nothing : wCellText = ""
                '    Return 0
            Case Else
        End Select
        Return 0
    End Function
    Function aafボタンデーターの設定変更_sub_GetCellIndex(ByVal sary() As BtnCellDatas, ByVal arymax As Integer, ByVal x As Integer, ByVal y As Integer, ByRef wBtnGrupIndex As Integer) As Integer
        wBtnGrupIndex = 0
        For a As Integer = 1 To arymax
            With sary(a)
                If .rcagAll.Contains(x, y) Then
                    wBtnGrupIndex = a
                    For b As Integer = 1 To UBound(.Cell)
                        If .Cell(b).rcag.Contains(x, y) Then Return b
                    Next
                    Exit For
                End If
            End With
        Next
        Return 0
    End Function
#End Region

#Region "mTBOX イベント"
    Friend Sub TBOX_DragOver(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs)
        gggbol = ⅩOLEDragDropテキストイベントANSI(2, mTBOX, e, "", 0, 0)
    End Sub
    Friend Sub TBOX_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs)
        Dim wTextANSI As String = "", wDrpX_inControl As Integer, wDrpY_inControl As Integer
        If ⅩOLEDragDropテキストイベントANSI(3, mTBOX, e, wTextANSI, wDrpX_inControl, wDrpY_inControl) Then
            mTBOX.SelectedText = ⅩVBStrLeft(wTextANSI, 1000)
        End If
    End Sub
    Friend Sub TBOX_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim b As Boolean = (mTBOX.Text <> "")
        Dim n As Integer = mTBOX.SelectionStart
        Dim m As Integer = mTBOX.TextLength
        With K編集
            .CellEnabledByIndex(.CellIndex_By_CellText(EDBS)) = (n > 0) 'BS
            .CellEnabledByIndex(.CellIndex_By_CellText(EDDEL)) = (mTBOX.SelectionLength > 0) 'DEL
            .CellEnabledByIndex(.CellIndex_By_CellText(EDコピー)) = b 'Copy
            .CellEnabledByIndex(.CellIndex_By_CellText(EDクリア)) = b 'Clear
            .CellEnabledByIndex(.CellIndex_By_CellText(EDBack)) = (n > 0) 'EDBack 
            .CellEnabledByIndex(.CellIndex_By_CellText(EDNext)) = (n < m) 'EDNext
        End With
        If b Then
            If mTBOX.ImeMode = ImeMode.KatakanaHalf Then
                '2023/10/23IME のポップウインドウを消すには、、、  mParent.Focus()
            End If
        End If
        K編集.Draw(0)
        mPCTBOX.Refresh()
    End Sub
    Friend Sub TBOX_ImeModeChanged()
        Call TextBoxImeModeChanged(mTBOX)
    End Sub
    Private mTBOXSTDc背 As Integer = &HFFFFFF& ' &HFFFFFF&
    Private mTBOXSTDc字 As Integer = &H0&
    Private mTBOXIMEc背 As Integer = &HFFFF40&
    Private mTBOXIMEc字 As Integer = &H0&
    Private Sub TextBoxImeModeChanged(ByRef wTextBox As TextBox)
        Dim cBK, cFR As Color
        If wTextBox.ImeMode = ImeMode.Off Or mTBOX.ImeMode = ImeMode.Alpha Then
            cBK = ⅩColor_from_INT(mTBOXSTDc背) : cFR = ⅩColor_from_INT(mTBOXSTDc字)
        Else
            cBK = ⅩColor_from_INT(mTBOXIMEc背) : cFR = ⅩColor_from_INT(mTBOXIMEc字)
        End If
        wTextBox.BackColor = cBK : wTextBox.ForeColor = cFR
    End Sub
    Private Sub TextBoxImeModeColorGetSet(ByVal Get_0_Set_1 As Integer, ByRef rwBackColorUP As Integer, ByRef rwForeColorUP As Integer, ByRef rwBackColorDN As Integer, ByRef rwForeColorDN As Integer)
        If Get_0_Set_1 = 0 Then
            rwBackColorUP = mTBOXSTDc背 : rwForeColorUP = mTBOXSTDc字 : rwBackColorDN = mTBOXIMEc背 : rwForeColorDN = mTBOXIMEc字
        Else
            mTBOXSTDc背 = aagg色値の検査修正値(rwBackColorUP) : mTBOXSTDc字 = aagg色値の検査修正値(rwForeColorUP) : mTBOXIMEc背 = aagg色値の検査修正値(rwBackColorDN) : mTBOXIMEc字 = aagg色値の検査修正値(rwForeColorDN)
        End If
    End Sub
#End Region

#Region "辞書 イベント"
    Friend Sub JiKeyLbl_MouseDoubleClick()
        Call JiKeyLblClear_Click()
    End Sub
    Friend Sub JiKeyLbl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
        If e.Button = Windows.Forms.MouseButtons.Right Then Call JiKeyLblClear_Click()
    End Sub
    Friend Sub JiKeyLbl_TextChanged()
        If mJiKeyLbl Is Nothing Or mJiLISTBOX Is Nothing Then Return
        Dim strlen_max As Integer = JISHO.JiKeyLbl_TextChanged(mJiKeyLbl, mJiLISTBOX)
        Dim s As String = New String("Ｗ", Math.Min(10, strlen_max + 1))
        mJiLISTBOX.ColumnWidth = Ⅹ文の幅pxl(mJiLISTBOX, s)
        Dim t As String = Trim(mJiKeyLbl.Text)
        mJiKeyLblEdit.Enabled = (t <> "")
        mJiKeyLblClear.Enabled = mJiKeyLblEdit.Enabled
        If t = "" Then
            mJiHisList.SelectedIndex = -1
        End If
        With mJiKeyLblinListBox
            .Text = mJiKeyLbl.Text
            Dim ss As String = New String("Ｗ", Math.Min(10, 1 + Len(.Text)))
            Dim wd As Integer = Math.Max(Ⅹ文の幅pxl(mJiLISTBOX, ss), mJiLISTBOX.ColumnWidth)
            .SetBounds(0, 0, wd, mJiLISTBOX.ItemHeight, BoundsSpecified.All)
        End With
    End Sub
    Friend Sub JiKeyLblClear_Click()
        If mJiKeyLbl Is Nothing Then Return
        Try
            mJiKeyLbl.Text = ""
            mJiLISTBOX.Items.Clear()
            mJiKeyLbl.Refresh()
        Catch ex As Exception
            MsgBox("ERROR in JiKeyLblClear_Click()" & vbCrLf & ex.ToString)
        End Try
    End Sub
    Friend Sub JiKeyLblinListBox_DoubleClick()
        Call JiKeyLblEdit_Click()
    End Sub
    Friend Sub JiKeyLblEdit_Click()
        Dim ttt As String = Trim(mJiKeyLbl.Text)
        If ttt = "" Then Return
        Dim ary() As String = {""} : Dim max As Integer
        gggbol = JISHO.JishoWordAryGetOnEditMode(ttt, ary, max)
        Dim lst As New ListBox
        Dim Dlg As frmDlgJishoEdit = New frmDlgJishoEdit
        Dim chg As Boolean = Dlg.frmDlgJishoEdit_LoadShow1(gggAppMainForm, ary, mJiLISTBOX, mJiKeyLbl, lst)
        Dlg.Dispose()
        If chg Then
            gggbol = JISHO.aaJishoChange(mJiKeyLbl.Text, lst)
        End If
        lst.Dispose()
        Call JiKeyLbl_TextChanged()
    End Sub
    Friend Sub JiHisBtn_Click()
        mJiHisList.Visible = Not mJiHisList.Visible
    End Sub
    Private Sub JiHisListAddItem(ByVal keystr As String)
        Const cListMax As Integer = 200
        If keystr = vbCrLf Then Return
        Dim chg As Boolean = False
        Dim n As Integer = Ⅹリストボックスから_文のリストを探して_インデックスを返す(mJiHisList, keystr, False)
        With mJiHisList.Items
            If n = 0 Then
                Return
            ElseIf n > 0 Then
                .RemoveAt(n)
                n = -1
            End If
            If n < 0 Then
                .Insert(0, keystr)
            End If
            Do While .Count > cListMax
                .RemoveAt(.Count - 1)
            Loop
            chg = True
            mJiHisList.SelectedIndex = 0
        End With
        If chg Then Call zzmJiHisList_ColumnWidth_Set()
    End Sub
    Friend Sub JiHisList_SelectedIndexChanged(ByVal lst As ListBox)
        If Not mJiKeyLbl.Visible Then Return
        Dim s As String = lst.SelectedItem
        If s <> "" Then
            mJiKeyLbl.Text = s
        End If
    End Sub
    Friend Sub JiHisList_DelMenuOP(ByVal op_Opening0_リスト削除_Click1 As Integer, ByVal mnu As ToolStripMenuItem, ByVal lst As ListBox)
        Dim n As Integer
        Select Case op_Opening0_リスト削除_Click1
            Case 0
                n = aaggリストボックス選択アイテム位置内にマウスがある(lst)
                mnu.Enabled = (n >= 0)
            Case Else
                n = lst.SelectedIndex
                If n >= 0 Then
                    lst.Items.RemoveAt(n)
                    Call JiKeyLblClear_Click()
                    Call zzmJiHisList_ColumnWidth_Set()
                End If
        End Select
    End Sub
    'Friend Sub JiHisList_VisibleChanged(ByVal lst As ListBox)
    '    '2024/04/05 不要な呼び出し
    '    If Not mJiKeyLbl.Visible Then Return
    '    Dim s As String = mJiKeyLbl.Text
    '    If s = "" Then Return
    '    If lst.Visible And lst.SelectedIndex < 0 Then
    '        Dim n As Integer = Ⅹリストボックスから_文のリストを探して_インデックスを返す(lst, s, False)
    '        If n > 0 Then
    '            mJiHisList.SelectedIndex = n
    '        Else
    '            If mJiLISTBOX.Items.Count > 0 Then
    '                Call JiHisListAddItem(s)
    '            End If
    '        End If
    '    End If
    'End Sub

#End Region

#Region "DlgColorSet_イベント"
    Private Sub zzColorSet_mUserBoxTxt(ByVal BK As Color, ByVal FR As Color)
        mUserBoxTxt.BackColor = BK : mUserBoxTxt.ForeColor = FR
        For a As Integer = 1 To UBound(mUserBoxLbl)
            If Not mUserBoxLbl(a) Is Nothing Then
                mUserBoxLbl(a).BackColor = BK : mUserBoxLbl(a).ForeColor = FR
            End If
        Next
    End Sub
    Private Sub DlgColorSet_aaeイベント_FormClosed_の最後に呼び出しています() Handles DlgColorSet.aaeイベント_FormClosed_の最後に呼び出しています
        DlgColorSet = Nothing
    End Sub
    Private Sub DlgColorSet_設定メニューのテキストをください(ByRef wmnu00 As String, ByRef wmnu01 As String, ByRef wmnu02 As String, ByRef wmnu03 As String, ByRef wmnu04 As String, ByRef wmnu05 As String, ByRef wmnu06 As String, ByRef wmnu07 As String, ByRef wmnu08 As String, ByRef wmnu09 As String, ByRef wmnu10 As String) Handles DlgColorSet.設定メニューのテキストをください
        wmnu00 = メインウインドウstr : wmnu01 = メインテキストstr : wmnu02 = K編集str : wmnu03 = KABCDstr : wmnu04 = KABCDBIGstr : wmnu05 = Kひらかなstr : wmnu06 = Kカタカナstr : wmnu07 = K辞書漢字CHGstr : wmnu08 = K辞書str : wmnu09 = K漢字str : wmnu10 = KUSERstr
    End Sub
    Private Sub DlgColorSet_色のデーターをください(ByRef wmnu00_10 As String, ByRef wBackColorUP As Integer, ByRef wForeColorUP As Integer, ByRef wBackColorDN As Integer, ByRef wForeColorDN As Integer) Handles DlgColorSet.色のデーターをください
        Select Case wmnu00_10
            Case メインウインドウstr
                wBackColorUP = ⅩColor_to_INT(mPCTBOX.TopLevelControl.BackColor) : wBackColorDN = wBackColorUP
                wForeColorUP = ⅩColor_to_INT(mPCTBOX.TopLevelControl.ForeColor) : wForeColorDN = wForeColorUP
            Case メインテキストstr
                Call TextBoxImeModeColorGetSet(0, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN)
            Case Else
                Dim btns As clsButtons = zzBtnsCurrent(wmnu00_10)
                If btns IsNot Nothing Then Call btns.DlgColorSet_色のデーターをください(wmnu00_10, wBackColorUP, wForeColorUP, wBackColorDN, wForeColorDN)
        End Select
    End Sub
    Private Sub DlgColorSet_色を設定してください(ByRef wmnu00_10 As String, ByVal rBackColorUP As Integer, ByVal rForeColorUP As Integer, ByVal rBackColorDN As Integer, ByVal rForeColorDN As Integer) Handles DlgColorSet.色を設定してください
        Dim BK As Color = ⅩColor_from_INT(rBackColorUP) : Dim FR As Color = ⅩColor_from_INT(rForeColorUP)
        Select Case wmnu00_10
            Case メインウインドウstr
                mPCTBOX.TopLevelControl.BackColor = BK
                mPCTBOX.TopLevelControl.ForeColor = FR
                mUserBoxPnl.BackColor = BK
                Call PCTBOX_Resize(mPCTBOX, BK, True)
            Case メインテキストstr
                Call TextBoxImeModeColorGetSet(1, rBackColorUP, rForeColorUP, rBackColorDN, rForeColorDN)
                Call TextBoxImeModeChanged(mTBOX)
            Case Else
                Dim btns As clsButtons = zzBtnsCurrent(wmnu00_10)
                If btns IsNot Nothing Then
                    Call btns.DlgColorSet_色を設定してください(wmnu00_10, rBackColorUP, rForeColorUP, rBackColorDN, rForeColorDN)
                    mPCTBOX.Refresh()
                    If wmnu00_10 = K漢字str Or wmnu00_10 = K辞書str Then
                        Dim index As Integer = K辞書漢字CHG.BtnIsStatic_OneSelect_CurIndex
                        Call zzK辞書_K漢字_mJiKeyLbl_ColorCgange_ListBoxs_ColorSet()
                        If (index = 1 And wmnu00_10 = K辞書str) Then
                            mJiLISTBOX.Refresh()
                        ElseIf (index = 2 And wmnu00_10 = K漢字str) Then
                            mKanLISTBOX.Refresh()
                        End If
                    ElseIf wmnu00_10 = KUSERstr Then
                        Call zzColorSet_mUserBoxTxt(BK, FR)
                    End If
                End If
        End Select
    End Sub
#End Region

#Region "DlgListFont_イベント"
    Private Function zzGetCont(ByVal Opcode As Integer) As Control
        Dim cont As Control = Nothing
        Select Case Opcode
            Case 1 : cont = mTBOX
            Case 2 : cont = mJiLISTBOX '= with mJiHisList
            Case 3 : cont = mKanLISTBOX
            Case 4 : cont = mUserBoxTxt
            Case 5 : cont = mPCTBOX
        End Select
        Return cont
        'frmDlgListFont.MenuPop
        'If sender Is mnuメインテキストに設定 Then
        '    Opcode = 1
        'ElseIf sender Is mnu辞書リストに設定 Then
        '    Opcode = 2
        'ElseIf sender Is mnu漢字リストに設定 Then
        '    Opcode = 3
        'ElseIf sender Is mnuユーザーボタンの表示テキストに設定 Then
        '    Opcode = 4
        'ElseIf sender Is mnuすべてのボタン群に設定 Then
        '    Opcode = 5
        'End If
    End Function
    Private Sub DlgListFont_フォントデーターをください(ByVal Opcode As Integer, ByRef wFontName As String, ByRef wFontSize As Integer, ByRef wFontBold As Boolean) Handles DlgListFont.フォントデーターをください
        Dim cont As Control = zzGetCont(Opcode)
        If cont Is Nothing Then Return
        Try
            With cont.Font
                wFontName = .Name : wFontSize = .Size : wFontBold = .Bold
            End With
        Catch ex As Exception
        End Try
    End Sub
    Private Sub DlgListFont_フォントを設定してください(ByVal Opcode As Integer, ByVal rFontName As String, ByVal rFontSize As Integer, ByVal rFontBold As Boolean) Handles DlgListFont.フォントを設定してください
        Try
            Dim cont As Control = zzGetCont(Opcode)
            If cont Is Nothing Then Return
            If cont Is mPCTBOX Then
                rFontSize = mPCTBOX.Font.Size
            End If
            Dim fsty As FontStyle = IIf(rFontBold, FontStyle.Bold, FontStyle.Regular)
            cont.Font = New Font(rFontName, rFontSize, fsty)
            If cont Is mPCTBOX Then
                mJiKeyLbl.Font = cont.Font
                gggbol = PCTBOX_Resize(mPCTBOX, mPCTBOX.TopLevelControl.BackColor, True)
            End If
            If cont Is mJiLISTBOX Then
                Call JiKeyLbl_TextChanged()
                Call zzmJiHisList_ColumnWidth_Set()
            End If
        Catch ex As Exception
        End Try
    End Sub
    Private Sub DlgListFont_aaeイベント_FormClosed_の最後に呼び出しています() Handles DlgListFont.aaeイベント_FormClosed_の最後に呼び出しています
        DlgListFont = Nothing
    End Sub
    Private Sub zzmJiHisList_ColumnWidth_Set()
        Try
            mJiHisList.Font = mJiLISTBOX.Font
            Dim strlen_max As Integer = 1
            With mJiHisList
                Dim n As Integer = 1
                For a As Integer = 0 To .Items.Count - 1
                    n = Len(.Items(a))
                    If strlen_max < n Then strlen_max = n
                Next
            End With
            Dim s As String = New String("Ｗ", Math.Min(10, 1 + strlen_max))
            mJiHisList.ColumnWidth = Ⅹ文の幅pxl(mJiHisList, s)
        Catch ex As Exception
        End Try
    End Sub
#End Region

#Region "DlgUserBtnTextSet_イベント"
    Private Sub DlgUserBtnTextSet_aaeDlgWnd_ShowTrue_HideFalse(ByRef ShowTrue_HideFalse As Boolean) Handles DlgUserBtnTextSet.aaeDlgWnd_ShowTrue_HideFalse
        aap選択枠Show = ShowTrue_HideFalse
        If ShowTrue_HideFalse = True Then Call aaf選択枠サイズセット_KUSER(0, 0, "")
    End Sub
    Private Sub DlgUserBtnTextSet_aaeイベント_FormClosed_の最後に呼び出しています() Handles DlgUserBtnTextSet.aaeイベント_FormClosed_の最後に呼び出しています
        DlgUserBtnTextSet = Nothing
    End Sub
#End Region

#Region "DlgUserBtnTextAllSet_イベント"
    Private Sub DlgUserBtnTextAllSet_aaeDataGridCell_Changed(ByVal rColumnIndex_0Base As Integer, ByVal rRowIndex_0Base As Integer, ByVal 改行付き文 As String) Handles DlgUserBtnTextAllSet.aaeDataGridCell_Changed
        Call aaf選択枠サイズセット_KUSER(rColumnIndex_0Base + 1, rRowIndex_0Base + 1, 改行付き文)
    End Sub
    Private Sub DlgUserBtnTextAllSet_aaeDlgWnd_ShowTrue_HideFalse(ByRef ShowTrue_HideFalse As Boolean) Handles DlgUserBtnTextAllSet.aaeDlgWnd_ShowTrue_HideFalse
        aap選択枠Show = ShowTrue_HideFalse
        'If ShowTrue_HideFalse = True Then Call zzボタン群すべての描画_EnabledChg_On_DlgShowHide()
    End Sub
    Private Sub DlgUserBtnTextAllSet_aaボタンTextChanged(ByVal rColumnIndex_0Base As Integer, ByVal rRowIndex_0Base As Integer, ByVal rNewText As String) Handles DlgUserBtnTextAllSet.aaeボタンTextChanged
        Dim rKeyIndex As Integer = (rRowIndex_0Base * 10) + rColumnIndex_0Base + 1
        KUSER.CellButtonText(rKeyIndex) = rNewText
        KUSER.Draw(rKeyIndex)
        mPCTBOX.Refresh()
        mUserBoxTxt.Text = Appf改行コード変換文(1, rNewText)
    End Sub
    Private Sub DlgUserBtnTextAllSet_aaeイベント_FormClosed_の最後に呼び出しています() Handles DlgUserBtnTextAllSet.aaeイベント_FormClosed_の最後に呼び出しています
        DlgUserBtnTextAllSet = Nothing
    End Sub
#End Region

#Region "DlgStdBtnAllSet_イベント"
    Private Function zzButtonsObj(ByVal BtnsKey As String, ByRef w文字データーすべて As String) As clsButtons
        Select Case BtnsKey
            Case cABCD半角 : w文字データーすべて = KABCD.AllButtonText : Return KABCD
            Case cABCD全角 : w文字データーすべて = KABCDBIG.AllButtonText : Return KABCDBIG
            Case cひらかな : w文字データーすべて = Kひらかな.AllButtonText : Return Kひらかな
            Case cカタカナ : w文字データーすべて = Kカタカナ.AllButtonText : Return Kカタカナ
        End Select
        w文字データーすべて = ""
        Return Nothing
    End Function
    Private Sub DlgStdBtnAllSet_aaeDlgWnd_ShowTrue_HideFalse(ByRef ShowTrue_HideFalse As Boolean) Handles DlgStdBtnAllSet.aaeDlgWnd_ShowTrue_HideFalse
        aap選択枠Show = False 'ShowTrue_HideFalse
        'If ShowTrue_HideFalse = True Then Call zzボタン群すべての描画_EnabledChg_On_DlgShowHide()
    End Sub
    Private Sub DlgStdBtnAllSet_aaeDataGridCell_Changed(ByVal BtnsKey As String, ByVal rColumnIndex_0Base As Integer, ByVal rRowIndex_0Base As Integer) Handles DlgStdBtnAllSet.aaeDataGridCell_Changed
        aap選択枠Show = True
        Call aaf選択枠サイズセット_STD_KEYS(BtnsKey, rColumnIndex_0Base + 1, rRowIndex_0Base + 1)
    End Sub
    Private Sub DlgStdBtnAllSet_aae基本ボタン文字データーをください(ByVal BtnsKey As String, ByRef w文字データーすべて As String, ByRef wCutStr As String) Handles DlgStdBtnAllSet.aae基本ボタン文字データーをください
        Dim obj As clsButtons = zzButtonsObj(BtnsKey, w文字データーすべて)
        wCutStr = clsButtons.CutStr
    End Sub
    Private Sub DlgStdBtnAllSet_aaeボタンTextChanged(ByVal BtnsKey As String, ByVal rColumnIndex_0Base As Integer, ByVal rRowIndex_0Base As Integer, ByVal rNewText As String) Handles DlgStdBtnAllSet.aaeボタンTextChanged
        Dim w文字データーすべて As String = ""
        Dim obj As clsButtons = zzButtonsObj(BtnsKey, w文字データーすべて)
        If obj Is Nothing Then Return
        Dim rKeyIndex As Integer = (rRowIndex_0Base * 10) + rColumnIndex_0Base + 1
        If rKeyIndex = 100 Then
            Return
        End If
        obj.CellButtonText(rKeyIndex) = rNewText
        obj.Draw(rKeyIndex)
        mPCTBOX.Refresh()
    End Sub
    Private Sub DlgStdBtnAllSet_aae基本ボタンを規定値に戻してください(ByVal BtnsKey As String) Handles DlgStdBtnAllSet.aae基本ボタンを規定値に戻してください
        Select Case BtnsKey
            Case cABCD半角 : KABCD.AllButtonText = mABCD半角TextsDEF : KABCD.Draw(0)
            Case cABCD全角 : KABCDBIG.AllButtonText = mABCD全角TextsDEF : KABCDBIG.Draw(0)
            Case cひらかな : Kひらかな.AllButtonText = mひらかなTextsDEF : Kひらかな.Draw(0)
            Case cカタカナ : Kカタカナ.AllButtonText = mカタカナTextsDEF : Kカタカナ.Draw(0)
        End Select
        mPCTBOX.Refresh()
    End Sub
    Private Sub DlgStdBtnAllSet_aaeイベント_FormClosed_の最後に呼び出しています() Handles DlgStdBtnAllSet.aaeイベント_FormClosed_の最後に呼び出しています
        DlgStdBtnAllSet = Nothing
        'Call zzボタン群すべての描画_EnabledChg_On_DlgShowHide()
    End Sub
#End Region

#Region "DlgBtnsPosSet_イベント"
    Private Sub DlgBtnsPosSet_aaeDlgWnd_ShowTrue_HideFalse(ByRef ShowTrue_HideFalse As Boolean) Handles DlgBtnsPosSet.aaeDlgWnd_ShowTrue_HideFalse
        If ShowTrue_HideFalse = True Then
            '''''
        End If
    End Sub
    Private Sub DlgBtnsPosSet_aaeイベント_FormClosed_の最後に呼び出しています() Handles DlgBtnsPosSet.aaeイベント_FormClosed_の最後に呼び出しています
        DlgBtnsPosSet = Nothing
    End Sub
#End Region


End Class
