掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
同じ操作 (ID:118263)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
私も一応こんなの作っていたんですが、乗っけようか、止めようか迷っていたところで。。。 Dim comb(20) As ComboBox 'コンボボックス配列宣言 Dim lbl(9) As Label Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load Dim n, m As Integer Me.Width = 80 * 9 + 150 Me.Height = 100 For n = 0 To 9 lbl(n) = New Label() 'インスタンスの作成 lbl(n).Parent = Me 'フォームの上に配置 With lbl(n) .Width = 80 .Left = lbl(n).Width * n .Text = Str(n + 1) .BackColor = Color.Blue .ForeColor = Color.White If n = 9 Then .Width = 120 Else .Width = 80 End If End With Next For n = 0 To 20 comb(n) = New ComboBox() 'インスタンスの作成 comb(n).Parent = Me 'フォームの上に配置 With comb(n) 'コンボボックスの配置 .Width = 40 .Left = comb(n).Width * n .Top = lbl(0).Top + lbl(0).Height .Text = "" .Tag = n End With If n \ 2 = n / 2 Then '偶数奇数--偶数だっら comb(n).Items.Add("-") 'イベントハンドラーの作成 AddHandler comb(n).Click, AddressOf ComboBox_SelectedIndexChanged For m = 1 To 10 comb(n).Items.Add(CStr(m)) Next Else comb(n).Text = "" End If Next End Sub Private Sub ComboBox_SelectedIndexChanged(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Dim cmb As ComboBox Dim t As Integer Dim n As Integer Dim s As Integer cmb = DirectCast(sender, ComboBox) If comb(cmb.Tag).Text() <> "" Then t = Val(comb(cmb.Tag).Text) If t = 20 Then Exit Sub With comb(cmb.Tag + 1) .Items.Clear() Select Case (t) Case 0 To 8 .Text = "-" .Items.Add("-") For n = 1 To (10 - t - 1) .Items.Add(CStr(n)) Next .Items.Add("/") Case 9 .Text = "-" .Items.Add("-") .Items.Add("/") Case Else .Text = "" End Select End With End If End Sub このコードは一つ欠陥があり、ComnboBoxを配列にするとComboBoxのIndexで項目を選択してもTextが確定せずに マウスで一回Textをクリックしないとだめなようです。配列にしないといいのですが。ComnboBoxの仕様かな。。 まあ参考までに。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.