忍者ブログ

VB.NET-TIPS などプログラミングについて

VB.NETのTIPS(小技集)を中心に、Javascript、PHP その他のプログラミングについて少し役に立つ情報を発信します。いわゆる個人的な忘備録ですが、みなさんのお役に立てれば幸いです。

VB.NET:Spread(GrapeCity)のシートのセルにボタン、テキスト、チェックボックスのセルタイプの設定
前回の続きでSPREADのアクティブシートのセルに、 ボタン、テキスト、チェックボックスの各セルタイプを設定します。
以下のソースは、フォームロード時にSPREADの初期化を行っています。 アクティブシートのカラム数を3に設定し、ヘッダ行数を0でクリア設定しています。

フォーム表示後、ボタンをクリックすると、 クリックイベント内で宣言された固定的なテストデータをSPREADに設定し表示させます。
データの1行分毎の処理で、「RowCount」プロパティを+1して行を追加します。
追加された行の1カラム目にはボタンセルタイプ(ButtonCellType)を設定します。 ボタンのキャプションの設定は、ButtonCellTypeの「Text」プロパティに設定します。

2カラム目はテキストセルタイプ(TextCellType)を設定します。 データを設定するには、セルの「Text」プロパティに設定します。 TextCellTypeは先頭ゼロが省かれることなく、5個目のデータの"0000005"がそのまま表示されます。

3カラム目はチェックボックスセルタイプ(CheckBoxCellType)を設定します。 CheckBoxCellTypeの場合、データのチェックの状態を設定するには「Value」プロパティに設定します。

Public Class Form1
    'フォームロード時にSPREADの初期化
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        With Me.FpSpread1.ActiveSheet
            'SPREADのアクティブシートのカラム数を3に設定
            .ColumnCount = 3
            'SPREADの行クリア
            .RowCount = 0
        End With
    End Sub

    'ボタンクリックでカラム連結処理
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        '仮に4行分のデータ
        Dim ArrData(,) As String = { _
            {"001", "Test001", "True"}, _
            {"002", "Test002", "False"}, _
            {"003", "Test003", "True"}, _
            {"004", "Test004", "False"}, _
            {"005", "0000005", "False"} _
        }

        'ソースが長くなるのでWith宣言
        With Me.FpSpread1.ActiveSheet
            'データの行数分の処理
            For i As Integer = 0 To ArrData.GetLength(0) - 1
                '行数を増やす
                .RowCount += 1

                '第1カラムはボタン(ButtonCellType)
                Dim buttonCell As New FarPoint.Win.Spread.CellType.ButtonCellType
                buttonCell.Text = ArrData(i, 0)     'ボタンのキャプション
                .Cells(i, 0).CellType = buttonCell

                '第2カラムはテキスト(TextCellType)
                Dim textCell As New FarPoint.Win.Spread.CellType.TextCellType
                .Cells(i, 1).CellType = textCell
                .Cells(i, 1).Text = ArrData(i, 1)

                '第3カラムはチェックボックス(CheckBoxCellType)
                Dim chkCell As New FarPoint.Win.Spread.CellType.CheckBoxCellType
                .Cells(i, 2).CellType = chkCell
                .Cells(i, 2).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center
                .Cells(i, 2).Value = CBool(ArrData(i, 2))   '値はValueに設定
            Next
        End With
    End Sub
End Class

下図は、最初、フォームが表示された時の様子です。

その後、ボタンをクリックした結果が以下の図です。



=====
2016/02/29:の時の情報











PR

コメント

コメントを書く