tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: ListViewの項目表示
投稿日: 2007/06/06(Wed) 23:59
投稿者hoido
魔界の仮面弁士様回答ありがとうございます。

> コードが崩れているので、先の投稿を『編集』して、
現在のコードは
> @1ヵ月分のリストビューを配置する
>    Private Sub Balcony_Start()
>         Dim f, No0 As Integer
>         Dim x, y As Integer
>         Dim Type As String = "Ba"
>
>         '週作成
>         For WeekNo = 0 To 4
>             LabelFree(0 + WeekNo) = New Label
>             With LabelFree(0 + WeekNo)
>             .Bounds = New Rectangle(New Point(0, 40 + WeekNo * 310), New Size(50, 290))
>                 .BorderStyle = BorderStyle.FixedSingle
>                 .Text = "DEMO"
>             End With
>             Me.Pnl_keikaku.Controls.Add(LabelFree(0 + WeekNo))
>
>             LabelFree(3 + WeekNo) = New Label
>             With LabelFree(3 + WeekNo)
>                 .Bounds = New Rectangle(New Point(50, 40 + WeekNo * 310), New Size(50, 290))
>                 .BorderStyle = BorderStyle.FixedSingle
>             End With
>             Me.Pnl_keikaku.Controls.Add(LabelFree(3 + WeekNo))
>
>             '日作成
>             For d As Integer = 0 To 6
>                 x = (d - 1) * 400 + 100
>                 y = WeekNo * 310
>                 If d = 0 Then GoTo skip
>
>                 '日付入力用Label配置
>                 LabelDate(No0) = New Label
>                 With LabelDate(No0)
>                     .Bounds = New Rectangle(New Point(x, 20 + y), New Size(400, 20))
>                     .BorderStyle = BorderStyle.FixedSingle
>                     .Name = "lbl_day_" & No0
>                     .Text = DateAdd(DateInterval.Day, No0, StartDay).ToString("M/d")
>                 End With
>                 Me.Pnl_keikaku.Controls.Add(LabelDate(No0))
>
>                 '生産台数合計入力用Label配置
>                 LabelTotal(No0) = New Label
>                 With LabelTotal(No0)
>                     .Bounds = New Rectangle(New Point(x, 310 + y), New Size(400, 20))
>                     .BorderStyle = BorderStyle.FixedSingle
>                     .Name = "lbl_Total_" & No0
>                 End With
>                 Me.Pnl_keikaku.Controls.Add(LabelTotal(No0))
>
>                 'ListView配置
>                 ListName(f) = New ListView
>                 With ListName(f)
>                     .Bounds = New Rectangle(New Point(x, 40 + y), New Size(400, 270))
>                     .BorderStyle = BorderStyle.FixedSingle
>                     .HeaderStyle = ColumnHeaderStyle.None
>                     .Name = "lis_lis" & Type & "_" & No0
>                 End With
>
>       'イベントプロシージャに登録
>                 Me.Pnl_keikaku.Controls.Add(ListName(f))
>                 AddHandler ListName(f).MouseUp, AddressOf ListView_MouseUp
>
>                 GoTo NextStep
>
> Skip:
>  
>               '日曜日の場合はここに来る
>                 LabelDate(No0) = New Label
>                 With LabelDate(No0)
>                     .Bounds = New Rectangle(New Point(50, 20 + y), New Size(50, 20))
>                     .BorderStyle = BorderStyle.FixedSingle
>                     .Name = "lbl_day_" & No0
>                     .Text = DateAdd(DateInterval.Day, No0, StartDay).ToString("M/d")
>                 End With
>                 Me.Pnl_keikaku.Controls.Add(LabelDate(No0))
>
> NextStep:
>                 f += 1
>                 No0 += 1
>             Next
>         Next
>     End Sub
>
> 以上長くなってしまって申し訳ありませんが1ヵ月分の
> リストビュー及び日付入力用のラベルを配置しています。
>
> A詳細項目の配置
      Private Sub Balcony_add()
>         Dim i, L As Integer
>         Dim Total As Long
>
>         For L = 0 To 35                    
>             Select Case L
>                 '日曜日はとばす
>                 Case 0, 7, 14, 21, 28, 35
>                     GoTo NextStep
>             End Select
>
>            'ListViewのフェッダー作成
>             With ListName(L)
>                 If Update_F = True Then
>                     .Clear()
>                 End If
>                 .View = View.Details
>                 .FullRowSelect = True
>                 .HeaderStyle = ColumnHeaderStyle.None
>                 .Columns.Add("DEMO1", 45, HorizontalAlignment.Center)
>                 .Columns.Add("DEMO2", 50, HorizontalAlignment.Center)
>                 .Columns.Add("DEMO3", 100, HorizontalAlignment.Center)
>             End With
>
>             '詳細項目追加理
>             Dim ItemNo As Integer = 0
>             Dim S_day As Date
>             Dim Select_Day As String = "lbl_day_" & L
>
>             For y As Long = 0 To RET - 1
>                 S_day = B_edit(y).seisan_day
>                 If S_day = Me.Pnl_keikaku.Controls(Select_Day).Text Then
>
>                     '詳細項目の追加
>                     With ListName(L)
>                         .Items.Add(Format(B_edit(y).suetuke, "MM/dd"), ItemNo)
>                         .Items(ItemNo).SubItems.Add(B_edit(y).type_code)
>                         .Items(ItemNo).SubItems.Add(B_edit(y).name)
>                         ItemNo += 1
>                     End With
>                 End If
>             Next y
>      NextStep:
>         Next L
>     End Sub
>
> 以上


申し訳ありませでした。

申し訳ありません。私の説明不足です。

       4/30
DEMO1 DEMO2 DEMO3
5/1    Ba   DEMO
5/1    Ba   DEMO
5/1    Ba   DEMO

作業の内容としては構造体(約500件)のなかから
例として4/30(上記参考)=B_edit(y).seisan_dayのデータのみ抽出しB_edit(y).suetuke、B_edit(y).type_code、B_edit(y).nameの3項目をリストビューに追加していく作業です。
それなのでリストビュー内に表示されるデータはいっさい加工せず、加工する部分としては日付のラベルのみ(上記例題の4/30のところ)のみです。

申し訳ありませんが今一度お願いします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。