VB 6.0
2012.01.12 23:11
리스트 뷰의 칼럼을 데이터의 길이에 맞게 자동으로 맞추어주는 소스
다물칸 주소복사
조회 수 3373 추천 수 0 댓글 0
구분 | 팁&트릭 |
---|
데이터값이 변할 때 마다(리프레쉬 하며는) 컬럼 길이가 바뀝니다.
리스트뷰 콘트롤과 커맨드 버튼 콘트롤 만 있으면 됩니다.
이것 가지고 응용하면 재미난 거 만들 수 있겠져.
Option Explicit Private Declare Function SendMessage Lib "user32.dll" _ Alias "SendMessageA" (ByVal hWnd As Long, _ ByVal Msg As Long, ByVal wParam As Long, _ ByVal lParam As Long) As Long Private Const LVM_FIRST = &H1000 Private Const LVM_SETCOLUMNWIDTH = (LVM_FIRST + 30) Private Const LVSCW_AUTOSIZE = -1 Private Const LVSCW_AUTOSIZE_USEHEADER = -2 Private Sub Form_Load() With ListView1 .ColumnHeaders.Add , , "First Header" .ColumnHeaders.Add , , "Header #2" .ColumnHeaders.Add , , "Yet Another Header" .ColumnHeaders.Add , , "Our Final Header" End With End Sub Private Sub cmdSize_Click() Dim Column_to_size As Long Dim Counter As Long Counter = 0 For Column_to_size = Counter To ListView1.ColumnHeaders.Count - 2 SendMessage ListView1.hWnd, _ LVM_SETCOLUMNWIDTH, _ Column_to_size, _ LVSCW_AUTOSIZE_USEHEADER Next End Sub