ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月29日(金) 00:20

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2006年10月14日(土) 21:02 
はじめまして
W32プログラミング講座のテキストエディタの項目で
エディットボックスのサイズをウィンドウに合わせたのと同様に

リストボックスのサイズを
Dim rc As RECT
Dim hList As HWND
hList=GetDlgItem(hSub,ListBox1)
GetClientRect(hSub,rc)
MoveWindow(hList, 0, 0, rc.right, rc.bottom,0)
という方法でウィンドウに合わせようとしました。

しかし、この方法だとウィンドウの下部の余白部分がいちいち変化して、気持ち悪いのです。
これを無くすには、どうすれば良いのでしょう。

ご存知の方、教えてください


通報する
ページトップ
   
投稿記事Posted: 2017年10月29日(日) 22:05 
リストボックスのプロパティで文字列アリにチェックする( LBS_HASSTRINGSを)
オーナードローを可変にする。

このままではリストにモジが表示されないので、
コード:
Type DRAWITEMSTRUCT
    CtlType As DWord
    CtlID As DWord
    itemID As DWord
    itemAction As DWord
    itemState As DWord
    hwndItem  As HWND
    hDC As HDC
    rcItem As RECT
    itemData As DWord
End Type
構造体を定義しておきWM_DRAWITEMメッセージを処理する
コード:
Function MainWndProc(hWnd As HWND, dwMsg As DWord, wParam As WPARAM, lParam As LPARAM) As DWord
	' TODO: この位置にウィンドウメッセージを処理するためのコードを記述します。

	Dim dis As *DRAWITEMSTRUCT 
	Dim sItem[100] As Byte

	If dwMsg = WM_DRAWITEM Then
		dis = lParam
		SendMessage(dis->hwndItem, LB_GETTEXT, dis->itemID, sItem)
		DrawText(dis->hDC, sItem, -1, dis->rcItem, DT_LEFT)
	End If

	' イベントプロシージャの呼び出しを行います。
	MainWndProc=EventCall_MainWnd(hWnd,dwMsg,wParam,lParam)
End Function


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[24人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean