VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2004/11/20(Sat) 15:35
投稿者jikoryuu
Eメール
URL
タイトルRe^3: リストビューとリッチテキストボックスを使用できるのなら

これは失礼しました。不注意で一部のプロパティ設定を記載するのを忘れていたようです。
基本的な機能についてはヘルプやWeb等で調べてください。

以下の2つのイベントのコードを置き換えてください。

Private Sub Command1_Click()
  Dim oli As ListItem
  Dim oSi As ListSubItem
  Dim c1 As Single
  Dim c2 As Single
  Dim f As Single
  Dim i As Long
  With ListView1
    Combo1.Clear
    .ListItems.Clear
    f = Font.Size 'テキストの幅を取得する為、Formのフォントを変更(後に元に戻します。)
    Font.Size = .Font.Size
    For i = 1 To 10
      'リストビューにリストを追加します。ここではテキストの最大幅に合わせていますが、
      'テキスト幅を固定することができる場合などは調整してください。
      'この場合、プロパティで予め設定しておくことができます。
      'その場合は、ループ終了後の幅設定は必要ありません。
      Set oli = .ListItems.Add(, , "name1")
      If c1 < TextWidth(oli.Text) Then c1 = TextWidth(oli.Width)
      Set oSi = oli.ListSubItems.Add(, , Format(Now() + i, "yyyy/mm/dd"))
      oSi.ForeColor = vbRed
      If c2 < TextWidth(oSi.Text) Then c2 = TextWidth(oSi.Text) + 175
      If oli.Text & " " & oSi.Text = RichTextBox1.Text Then
        oli.Selected = True
      End If
      Combo1.AddItem oli.Text & " " & oSi.Text
    Next
    '上で述べている幅設定
    .ColumnHeaders(1).Width = c1 - 75
    .ColumnHeaders(2).Width = c2
    'リストアイテム数により高さを調節しています。
    '大きくなりすぎる場合はiが一定以上の行数にならないようにしてください。
    .Height = (i - 1) * .ListItems(1).Height
    Font.Size = f 'Formのフォントサイズを元に戻します。
    .ZOrder 0 '最前面にします。
    .Visible = True
    On Error Resume Next
    .SetFocus
  End With
End Sub

Private Sub Form_Load()
  With ListView1
    .BorderStyle = ccNone
    .View = lvwReport     'レポート形式(詳細表示)
    .FullRowSelect = True '行全体を選択
    .GridLines = False    '境界線を表示しない
    .HideColumnHeaders = True 'カラムヘッダ(列見出し)を表示しない
    .LabelEdit = lvwManual 'リストアイテム編集を手動()で指示する
    .ColumnHeaders.Add , , "" 'カラムヘッダ(列見出し)の追加
    .ColumnHeaders.Add , , "" 'もうひとつ追加
    .Top = 1200
    .Left = 240
    .Visible = False
  End With
  With RichTextBox1
    .Left = 210
    .Top = 870
    .Width = 2745
    .Height = 345
  End With
  With Command1
    .Left = 2670
    .Top = 915
    .Width = 255
    .Height = 255
    .Font.Name = "Marlett" 'Windowsのコントロール用フォント
    .Caption = 6 'コンボボックスのボタンの逆三角
    .ZOrder 0
  End With
  With Combo1
    .Left = 210
    .Top = 300
    .Width = 2745
  End With
  Command1_Click
  ListView1.Visible = False
End Sub


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

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -