Gadget ›› ListViewGadget

プログラム言語 FreeBasic


ListViewGadget

構文

ListViewGadget( gadget , x , y , Width , Height , [ExStyle=0] , [Style=LVS_ICON Or LVS_REPORT] , [Style2=0] ,[SizeIcon=16] , [StyleIcon=LVSIL_SMALL ])

Function ListViewGadget(ByVal gadget As Long, ByVal x As Long, ByVal y As Long, ByVal w As Long, ByVal h As Long, ByVal ExStyle As Long = 0, ByVal Style As Long = LVS_ICON Or LVS_REPORT,ByVal Style2 As Long = 0,ByVal SizeIcon As Long = 16, ByVal StyleIcon As Long = LVSIL_SMALL) As HWND


説明

ListView (画像付きリスト) ガジェットを作成します。
Linuxでは、リストは LVS_REPORT 詳細ビューモードでのみ機能します。

ガジェットの色を設定する関数 SetGadgetColor

ガジェットの色を取得する関数 GetGadgetColor

ガジェットのフォントを設定する関数 SetGadgetFont

画像リストのハンドルを取得する関数 GetHimageCombo_(Windows のみ)
(例: list=GetHimageCombo_(gadget))

オプション

gadget - ガジェットの番号(ゼロより大きい任意の自然数、1、2、3、4など)

x , y , Width , Height - 位置とサイズ

ExStyle - 高度なスタイル。 全てのスタイルは、 ここ で参照できます。以下はその一部です:

Linux と Windows:

LVS_EX_GRIDLINES 段落とサブ段落にグリッドを表示します。
このスタイルは、スタイル LVS_REPORT との組み合わせでのみ使用可能です。

LVS_EX_SUBITEMIMAGES 画像を、サブのために表示することができます。
このスタイルは、LVS_REPORT スタイルと組み合わせたときだけ使用可能です。

LVS_EX_FULLROWSELECT - (Linuxでは常に有効になっています)。 アイテムを選択すると、そのアイテムとそのすべてのサブアイテムが強調表示されます。
このスタイルは、LVS_REPORT スタイルと組み合わせた場合にだけ使えます。
このスタイルを使うと、イベントで、メインアイテム(アイテム)と子アイテム(サブアイテム)からインデックスを取得できます。
イベントでこのスタイルを使わないと、サブアイテムをクリックしてメインアイテム(最初の列)のインデックスを取得することはできません。


Windows だけ:

LVS_EX_AUTOAUTOARRANGE 自動整列アイコン。(LVS_AUTOARRANGE と同様)

LVS_EX_AUTOCHECKSELECT ワンクリックで、自動チェックボックスをオンにします。

LVS_EX_AUTOSIZECOLUMNS 自動的に列の ListView のサイズを設定。

LVS_EX_BORDERSELECT 要素が選択されたときに、項目をハイライトする代わりに、境界線の色を変更する。

LVS_EX_CHECKBOXES CheckBox のリストに含める。

LVS_EX_COLUMNSNAPPOINTS ユーザーが列のサイズを変更するとき、列の幅の最小値へのバインディング。

LVS_EX_HEADERDRAGDROP 列をドラッグアンドドロップすることができます。スタイル LVS_REPORT でのみ利用できます。

LVS_EX_HIDELABELS アイコンと小さいアイコンで、ラベルを非表示にします。

LVS_EX_SNAPTOGRID アイコンの中で、アイコンは自動的にグリッドにスナップします。


Style - ガジェットのスタイル:

Linux と Windows:

LVS_NOCOLUMNHEADER スタイル LVS_NOCOLUMNHEADER は、詳細ビューモードで、列のタイトルは、列の並べ替えやサイズを変更しても、表示されません。
LVS_SINGLESEL ユーザーがリストから、ひとつだけの項目を選択することができます。(デフォルトでは、複数の項目を選択することができます。)


Windows だけ:

LVS_REPORT リストは、複数の列で構成される詳細なレポートの形で表示されます。
LVS_ICON リストは、アイコン・サイズのウィンドウとして表示されます。
LVS_SMALLICON リストは、縮小したアイコン・サイズを使用して、ウィンドウとして表示されます。
LVS_LIST 縮小サイズのアイコンの単純なリスト。
LVS_ALIGNLEFT LVS_ICON と LVS_SMALLICON と組み合わせて使用します。
このスタイルの場合、アイコンは左の境界に沿って整列されます。

LVS_ALIGNTOP LVS_ICON と LVS_SMALLICON と組み合わせて使用します。
このスタイルの場合、アイコンは上部の境界に整列されます。
スタイル LVS_ALIGNTOP のデフォルトです。

LVS_AUTOARRANGE リストビューコントロールのウィンドウ本体のアイコンを自動配置するために、LVS_ICON と LVS_SMALLICON を組み合わせて使用。
LVS_NOSCROLL 旋回ウィンドウのコンテンツ管理体リストビューの機能を、無効にします。
LVS_EDITLABELS このスタイルは、ユーザーがリスト項目の名前を編集することができます。
スタイル
LVS_EDITLABELS を指定した場合、アプリケーションは、後述するように、通知 LVN_ENDLABELEDIT を処理する必要があります。
LVS_NOLABELWRAP 署名アイコンが、行に表示されます。
LVS_NOSORTHEADER このスタイルの場合、ウィンドウのタイトルは、詳細ビューモードの列をソートすることはできません。
LVS_OWNERDRAWFIXED ウィンドウは、親が、リストの内容を描画実行できるようにします。
これを行うには、親ウィンドウは WM_DRAWITEM メッセージを処理する必要があります 。

LVS_SHAREIMAGELIST このスタイルは、リストビューコントロールのいくつかの本体で、画像のリストの共有を構成するように設計されています。
LVS_SHOWSELALWAYS リストビューの統治体がアクティブでないときでも、選択リスト項目は、分離して表示されます。
LVS_SORTASCENDING 直接の順序で、テキスト要素のソートラインを、実行します。
LVS_SORTDESCENDING 同じですが、逆の順序でソートします。


Style2 - 別のスタイル・ガジェット(Windows だけ)(すべてのウィンドウに共通ですが、ガジェットには不十分です):

拡張ウィンドウ スタイル
http://msdn.microsoft.com/ja-jp/library/61fe4bte.aspx

SizeIcon アイコンのリストのサイズ (既定値 16)

StyleIcon スタイル・アイコン( 既定値 LVSIL_SMALL) :

LVSIL_NORMAL 大きいアイコン

LVSIL_SMALL 小さいアイコン

LVSIL_STATE 状態のイメージ・リスト

また、メッセージ LVM_SETVIEW でスタイルを SetWindowLong Api機能と、SendMessageとセットすることができるか、交換することができます。しかし、両立しないものがあるのを思い出さなければなりません。少なくとも、私はそれと衝突しました。大部分のスタイルは、 MSDN で見つかります。


プラットホーム

Windows , Linux


例1:

#Include "window9.bi"

Var hwnd=OpenWindow("Hello",10,10,500,500)
Var Style= LVS_EX_FULLROWSELECT Or LVS_EX_GRIDLINES Or LVS_EX_SUBITEMIMAGES
Var LLIISS=ListViewGadget(1,10,10,310,300,Style,,,32)
AddListViewColumn(1, "1 Column",0,1,100)
AddListViewColumn(1, "2 Column",1,2,100)
AddListViewColumn(1, "3 Column",2,3,100)
For aa As Integer=0 To 15
   AddListViewItem(1,"item "+Str(aa),Extract_Icon(GetSystemDir & "\SetupAPI.dll",aa),aa,0)
   AddListViewItem(1,"item "+Str(aa+18),Extract_Icon(GetSystemDir & "\SetupAPI.dll",aa+16),aa,1)
   AddListViewItem(1,"item "+Str(aa+36),Extract_Icon(GetSystemDir & "\SetupAPI.dll",aa+32),aa,2)
Next
Do
   Var event=WaitEvent()
   If Event=EventClose Then End
Loop


例2(Windowsのみ):

#Include "window9.bi"
Var hwnd=OpenWindow("",10,10,500,500)
Var LLIISS=ListViewGadget(1,10,10,310,600,0, LVS_ICON , ,40,LVSIL_NORMAL )
For aa As Integer=0 To 15
   AddListViewItem(1,"item "+Str(aa),Extract_Icon(GetSystemDir & "\SetupAPI.dll",aa),aa,0)
Next

Do
   Var event=WaitEvent()
   If Event=EventClose Then End
Loop


http://mneniya.ucoz.ru/

←リンク元に戻る Window9 トップに戻る FreeBASIC マニュアル トップに戻る
ロシア語オリジナル:https://users.freebasic-portal.de/freebasicru/window9lib/window9.html