- PR -

spreadにおいて、チェックボックスを複数指定

投稿者投稿内容
ペン子
会議室デビュー日: 2008/02/08
投稿数: 3
投稿日時: 2008-02-08 18:18
spreadにおいて、チェックボックスについてなのですが、
表の1列目にチェックボックスが1つあります。

表の2列目にチェックボックスが5つあります。

表の1列目のチェックボックスをチェックしたら2列目のチェックボックスが全て同時にチェックされるという事をしたいのですが、どなたか、
方法をご教授下さい。
Tesla
常連さん
会議室デビュー日: 2007/03/13
投稿数: 30
投稿日時: 2008-02-08 20:51
「spread」とは SPREAD for .NET のことだと思いますが、
Windows Forms Edition とWeb Forms Edition のどちらでしょうか?

それとバージョンも書いた方がよいと思います。
VB.NETER
会議室デビュー日: 2008/02/12
投稿数: 4
投稿日時: 2008-02-12 10:05
お世話になっております。

おっしゃる通り、spreadとはFOR.NETのことです。
そして、windows Form Editionです。

宜しくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2008-02-12 11:32
引用:

ペン子さんの書き込み (2008-02-08 18:18) より:

spreadにおいて、チェックボックスについてなのですが、
表の1列目にチェックボックスが1つあります。

表の2列目にチェックボックスが5つあります。

表の1列目のチェックボックスをチェックしたら2列目のチェックボックスが全て同時にチェックされるという事をしたいのですが、どなたか、
方法をご教授下さい。

引用:

VB.NETERさんの書き込み (2008-02-12 10:05) より:

お世話になっております。

おっしゃる通り、spreadとはFOR.NETのことです。
そして、windows Form Editionです。

宜しくお願い致します。


ペン子さんが答えるべきところを VB.NETER さんが答えておりますが、どういうことなのでしょうか?

質問の件は 1 列目の CheckBox のイベントで 2 列目の CheckBox にチェックするように処理を書くだけだと思いますが、何に困っていらっしゃるのでしょう?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
VB.NETER
会議室デビュー日: 2008/02/12
投稿数: 4
投稿日時: 2008-02-12 11:47
お世話になっております。
VB.NETERはパスワードを再発行してから名前を紛らわしくも変えてしまいました。
すみません。

Dim instance As New FarPoint.Win.Spread.CellType.CheckBoxCellType
FpSpread1.ActiveSheet.Cells(1, 1).CellType = instance.TextTrue

このように書いたらチェックボックスにチェックがつかずにセルが消えてしまうんです。
VBの普通のフォーム上で、チェックさせる分には、.checked = true とかで、
いけると思うんですが、spread 上だと、これではだめなのでしょうか。
Tesla
常連さん
会議室デビュー日: 2007/03/13
投稿数: 30
投稿日時: 2008-02-12 21:30
引用:

VB.NETERさんの書き込み (2008-02-12 11:47) より:
Dim instance As New FarPoint.Win.Spread.CellType.CheckBoxCellType
FpSpread1.ActiveSheet.Cells(1, 1).CellType = instance.TextTrue

このように書いたらチェックボックスにチェックがつかずにセルが消えてしまうんです。


FarPoint.Win.Spread.Cell のCellType プロパティにはICellTypeを設定します。
引用:

ヘルプ CellType プロパティ より:
セルのセル型を取得または設定します。

Visual Basic (宣言)
Public Property CellType As ICellType


FarPoint.Win.Spread.CellType.CheckBoxCellTypeのインスタンスを設定すると、チェックボックス型のセルになります。

CheckBoxCellTypeのTextTrueプロパティは、チェックされる時に表示されるテキストです。なのでこれを設定してもチェックはされません。(Stringですので型も違います)

チェックするには、セルをチェックボックス型にした上でセルの値を設定します。
セルの値は FarPoint.Win.Spread.Cellのインスタンスが保持していて、Valueプロパティで設定できます。
引用:

ヘルプ Value プロパティ の解説より:
CheckBoxCellTypeは、2値式チェックボックスまたは3値式チェックボックスのどちらかを表します(ThreeStateプロパティを参照してください)。2値式チェックボックスを表す場合、セルの値は、チェックボックスがOFFのときはFalse、ONのときはTrueになります。3値式チェックボックスを表す場合、セルの値は、チェックボックスがOFFのときは0、ONのときは1、不確定のときは2になります。

ペン子
会議室デビュー日: 2008/02/08
投稿数: 3
投稿日時: 2008-02-13 13:16
ありがとうございました。


解決いたしました!




ペン子
会議室デビュー日: 2008/02/08
投稿数: 3
投稿日時: 2008-02-13 17:41
度々すいません。解決したと思いきや、新たな問題というか、再度ご教授頂きたい事があります。

Spread for .NET 6.0で表の1列目にチェックボックスを設けたいのですが、
全てにではなく、一まとまりで、一つチェックボックスを作りたいのです。
1
1
1
1
1
2
2
2
3
3
3
4
5
5
5
5
6
7
8
8
8
8
9
9
10
10
10
10
のようになっていたとして、各数字のまとまりで一つチェックボックスをつけたいのです。数字はそのまま残しておいていいです。
なので、各数字の一番上の数字だけ、キャプションに書き込むようにして、他の数字はテキストに書き込むようにして分けています。

ただ、実際ループを使って実行しようとすると、チェックボックスが各まとまりの一番上ではなく、各まとまりの一番下に来てしまいます。どうしたら一番上に表示できるでしょうか。

どなたか宜しくお願い致します。

スキルアップ/キャリアアップ(JOB@IT)