FileListBoxに横スクロールバーを追加するには?

解決


ライライ犬  2003-06-05 05:19:03  No: 107422

この質問が基本的な事なのか、よく分からないぐらい初心者です。(XP/VB6)
リストボックスにSendMessageを使って、横スクロールバーを追加する
ことはできたのですがFileListBoxに追加できません。
その前に、追加できるのでしょうか?もし、できるのであれば
教えてもらいたいのですが、どうぞよろしくお願いします。

Declare Function SendMessage Lib "user32.dll" _
    Alias "SendMessageA" _
   (ByVal hWnd As Long, _
    ByVal wMsg As Long, _
    ByVal wParam As Long, _
    lParam As Any) As Long
    
Public Const LB_FINDSTRING = &H18F
Public Const LB_FINDSTRINGEXACT = &H1A2

Public Const LB_SETSEL = &H185
Public Const LB_GETSELITEMS = &H191
Public Const LB_ERR = (-1)
Public Const LB_ADDSTRING = &H180

lRtn = SendMessage(FileListBox1.hWnd, LB_SETHORIZONTALEXTENT, 400, 0)


VBレスキュー(花ちゃん)  URL  2003-06-05 06:06:30  No: 107423

APIを使っても簡単にはできないようですので、下記のようにしてみて下さい。

PictureBox内にFileListBoxを貼り付けFileListBoxの
表示位置とサイズを変更する事で実現できます。
表示位置とサイズは調整して下さい。

Private Sub Form_Load()
    '別途プロパティで設定でもOK
    Picture1.Move 255, 345, 1610, 1800
    File1.Move -40, -35
    With HScroll1
        .Move 15, 1485, 1550, 255
        .Max = -3000
        .Min = -40
        .Value = -40
        .LargeChange = 50
    End With
End Sub

Private Sub HScroll1_Change()
    File1.Left = HScroll1.Value
    File1.Width = 1605 - HScroll1.Value
End Sub


ライライ犬  2003-06-05 07:08:19  No: 107424

VBレスキュー(花ちゃん)さん、返事ありがとうございます。
よく拝見しているHPだったので、すこし感動です。o^_^o
さて、書いて頂いたソースを試したのですが
Load時にエラーが出てしまいます。
ちゃんと、PictureBox内にFileListBoxを貼り付けたのですが
「オブジェクトが必要です。」とメッセージ。なぜでしょ?
もう一度、レスキューお願いします。ご迷惑と思いますが…。^ ^;

   With HScroll1
        .Move 15, 1485, 1550, 255  'ここでエラーです。


VBレスキュー(花ちゃん)  2003-06-05 07:22:28  No: 107425

HScrollBar コントロールも貼り付けて下さい


ライライ犬  2003-06-05 09:32:50  No: 107426

すみません、HScrollBarを貼り付けて無事できました。
コンポーネントにスクロールバーがあることをすっかり忘れていました。
ほんとに、助かりました。ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加