操作とイベント
FunctionKeyPressイベントは、GcClassicFunctionKey コントロールの中核をなす機能を提供します。このイベントは、[F1]から[F12]までのファンクションキー、[Home]、[End]、[PageUp]、[PageDown]の各キー、およびこれらのキーと制御キー ([Alt]、[Ctrl]、[Shift])を組み合わせたキーをキーボード上で押下したとき、または対応するボタンをマウスでクリックしたときに発生します。FunctionKeyPressイベントのプロシージャに任意のコードを記述することで、ファンクションキー操作時に目的の動作を実現することができます。
また、ShiftStateDown イベントと ShiftStateUp イベントを利用することで、[Ctrl]キーなどの制御キーを押下したときに、対象となる動作を切り替えることも可能です。次のサンプルコードは、[Ctrl]キーの押下に合わせてアクティブなキーセットを入れ替える方法を示します。
さらに、InteractiveMouse プロパティをFalseに設定すると、マウスによるボタンクリックを禁止し、キーボード操作のみを対象にできます。KeyRepeat プロパティは、キーを押し続けている間、FunctionKeyPress イベントを繰り返し発生させるかどうかを指定します。
また、ShiftStateDown イベントと ShiftStateUp イベントを利用することで、[Ctrl]キーなどの制御キーを押下したときに、対象となる動作を切り替えることも可能です。次のサンプルコードは、[Ctrl]キーの押下に合わせてアクティブなキーセットを入れ替える方法を示します。
Imports GrapeCity.Win.Bars Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load ' スタイルセットを作成します。 Dim aStyle As ThreeDStyleSet = New ThreeDStyleSet() aStyle.AlignHorizontal = AlignHorizontal.Center aStyle.AlignVertical = AlignVertical.Middle GcClassicFunctionKey1.StyleSets.Add("styleA", aStyle) ' 標準のキーセットを作成します。 Dim aIndex As Integer = GcClassicFunctionKey1.KeySets.Add("Normal") GcClassicFunctionKey1.KeySets(aIndex)(0).Text = "F1 ヘルプ" GcClassicFunctionKey1.KeySets(aIndex)(1).Text = "F2" GcClassicFunctionKey1.KeySets(aIndex)(1).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(2).Text = "F3 定型句挿入" GcClassicFunctionKey1.KeySets(aIndex)(3).Text = "F4 繰り返し" GcClassicFunctionKey1.KeySets(aIndex)(4).Text = "F5 ジャンプ" GcClassicFunctionKey1.KeySets(aIndex)(5).Text = "F6 切り替え" GcClassicFunctionKey1.KeySets(aIndex)(6).Text = "F7 スペルチェック" GcClassicFunctionKey1.KeySets(aIndex)(7).Text = "F8" GcClassicFunctionKey1.KeySets(aIndex)(7).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(8).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(8).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(9).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(9).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(10).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(10).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(11).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(11).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(12).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(12).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(13).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(13).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(14).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(14).Enabled = False GcClassicFunctionKey1.KeySets(aIndex)(15).ButtonIndex = -1 GcClassicFunctionKey1.KeySets(aIndex)(15).Enabled = False ' Ctrlボタン押下時のキーセットを作成します。 GcClassicFunctionKey1.KeySets.Add("Controled") GcClassicFunctionKey1.KeySets("Controled")(0).Text = "F1" GcClassicFunctionKey1.KeySets("Controled")(0).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(1).Text = "F2 印刷プレビュー" GcClassicFunctionKey1.KeySets("Controled")(2).Text = "F3 印刷" GcClassicFunctionKey1.KeySets("Controled")(3).Text = "F4 移動" GcClassicFunctionKey1.KeySets("Controled")(4).Text = "F5 検索" GcClassicFunctionKey1.KeySets("Controled")(5).Text = "F6" GcClassicFunctionKey1.KeySets("Controled")(5).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(6).Text = "F7" GcClassicFunctionKey1.KeySets("Controled")(6).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(7).Text = "F8 サイズ変更" GcClassicFunctionKey1.KeySets("Controled")(8).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(8).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(9).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(9).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(10).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(10).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(11).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(11).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(12).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(12).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(13).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(13).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(14).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(14).Enabled = False GcClassicFunctionKey1.KeySets("Controled")(15).ButtonIndex = -1 GcClassicFunctionKey1.KeySets("Controled")(15).Enabled = False ' 作成したスタイルセットとキーセットをアクティブにします。 GcClassicFunctionKey1.ActiveStyleSet = "styleA" GcClassicFunctionKey1.ActiveKeySet = "Normal" GcClassicFunctionKey1.ColumnGroups = "8" End Sub Private Sub GcClassicFunctionKey1_ShiftStateDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles GcClassicFunctionKey1.ShiftStateUp If e.Control = True Then GcClassicFunctionKey1.ActiveKeySet = "Controled" End If End Sub Private Sub GcClassicFunctionKey1_ShiftStateUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles GcClassicFunctionKey1.ShiftStateUp If e.Control = False Then GcClassicFunctionKey1.ActiveKeySet = "Normal" End If End Sub
using GrapeCity.Win.Bars; private void Form1_Load(object sender, System.EventArgs e) { // スタイルセットを作成します。 ThreeDStyleSet aStyle = new ThreeDStyleSet(); aStyle.AlignHorizontal = AlignHorizontal.Center; aStyle.AlignVertical = AlignVertical.Middle; gcClassicFunctionKey1.StyleSets.Add("styleA",aStyle); // 標準のキーセットを作成します。 int aIndex = gcClassicFunctionKey1.KeySets.Add("Normal"); gcClassicFunctionKey1.KeySets[aIndex][0].Text = "F1 ヘルプ"; gcClassicFunctionKey1.KeySets[aIndex][1].Text = "F2"; gcClassicFunctionKey1.KeySets[aIndex][1].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][2].Text = "F3 定型句挿入"; gcClassicFunctionKey1.KeySets[aIndex][3].Text = "F4 繰り返し"; gcClassicFunctionKey1.KeySets[aIndex][4].Text = "F5 ジャンプ"; gcClassicFunctionKey1.KeySets[aIndex][5].Text = "F6 切り替え"; gcClassicFunctionKey1.KeySets[aIndex][6].Text = "F7 スペルチェック"; gcClassicFunctionKey1.KeySets[aIndex][7].Text = "F8"; gcClassicFunctionKey1.KeySets[aIndex][7].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][8].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][8].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][9].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][9].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][10].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][10].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][11].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][11].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][12].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][12].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][13].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][13].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][14].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][14].Enabled = false; gcClassicFunctionKey1.KeySets[aIndex][15].ButtonIndex = -1; gcClassicFunctionKey1.KeySets[aIndex][15].Enabled = false; // Ctrlボタン押下時のキーセットを作成します。 gcClassicFunctionKey1.KeySets.Add("Controled"); gcClassicFunctionKey1.KeySets["Controled"][0].Text = "F1"; gcClassicFunctionKey1.KeySets["Controled"][0].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][1].Text = "F2 印刷プレビュー"; gcClassicFunctionKey1.KeySets["Controled"][2].Text = "F3 印刷"; gcClassicFunctionKey1.KeySets["Controled"][3].Text = "F4 移動"; gcClassicFunctionKey1.KeySets["Controled"][4].Text = "F5 検索"; gcClassicFunctionKey1.KeySets["Controled"][5].Text = "F6"; gcClassicFunctionKey1.KeySets["Controled"][5].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][6].Text = "F7"; gcClassicFunctionKey1.KeySets["Controled"][6].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][7].Text = "F8 サイズ変更"; gcClassicFunctionKey1.KeySets["Controled"][8].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][8].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][9].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][9].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][10].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][10].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][11].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][11].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][12].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][12].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][13].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][13].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][14].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][14].Enabled = false; gcClassicFunctionKey1.KeySets["Controled"][15].ButtonIndex = -1; gcClassicFunctionKey1.KeySets["Controled"][15].Enabled = false; // 作成したスタイルセットとキーセットをアクティブにします。 gcClassicFunctionKey1.ActiveStyleSet = "styleA"; gcClassicFunctionKey1.ActiveKeySet = "Normal"; gcClassicFunctionKey1.ColumnGroups = "8"; } private void GcClassicFunctionKey1_ShiftStateDown(object sender, System.Windows.Forms.KeyEventArgs e) { if (e.Control == true) { gcClassicFunctionKey1.ActiveKeySet = "Controled"; } } private void gcClassicFunctionKey1_ShiftStateUp(object sender, System.Windows.Forms.KeyEventArgs e) { if (e.Control == false) { gcClassicFunctionKey1.ActiveKeySet = "Normal"; } }