Форум: "Основная";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
ВнизListView без полос прокрутки Найти похожие ветки
← →
gdaujk © (2005-11-16 23:29) [0]Доброго времени суток. Задача, стоящая передо мной, ясна из темы. Делаю так. На форме есть ListView1 (vsReport) c двумя колонками (можно и не с 2-мя) и кнопка Button1. Что бы избавиться от полос прокрутки делаю так:
procedure TForm1.FormCreate(Sender: TObject);
begin
SetWindowLong(ListView1.Handle, GWL_STYLE,
GetWindowLong(ListView1.Handle, GWL_STYLE) or LVS_NOSCROLL);
end;
При нажатии на кнопку далаю следующее:procedure TForm1.Button1Click(Sender: TObject);
begin
ListView1.Width := ListView1.Width + 10;
end;
Нажимаю на кнопку Button1. ListView расширяется, а его заголовок (ColumnHeaders) остаётся прежней ширины и в дальнейшем ведёт себя очень плохо, особенно при изменении ширины колонок.
Вопрос: Как сделать ListView без полос прокрутки и вышеописанной проблемы с его заголовком?
PS: пробовал то же самое проделать на чистом WinAPI, результат тот же…
← →
gdaujk © (2005-11-17 12:52) [1]Использую XP, D7...
← →
begin...end © (2005-11-17 13:02) [2]> gdaujk © (17.11.05 12:52) [1]
LVS_NOSCROLL
Scrolling is disabled. All items must be within the client area. This style is not compatible with the LVS_LIST or LVS_REPORT styles. See Knowledge Base Article Q137520 for further discussion.
Q137520: http://support.microsoft.com/default.aspx?scid=kb;en-us;137520
?
← →
gdaujk © (2005-11-17 14:29) [3]begin...end © (17.11.05 13:02) [2]
Спасибо ограмное. Всё робит, правде не совсем понимаю как :-).procedure TMyListView.PositionHeader;
var
Header: HWND;
dwStyle: DWORD;
Rect: TRect;
hdLayout: THDLayout;
WPos: TWindowPos;
begin
Header := GetWindow(Handle, GW_CHILD);
//dwStyle := GetWindowLong(hwndListView, GWL_STYLE);
//SetWindowLong(Handle, GWL_STYLE, dwStyle);
Windows.GetClientRect(Handle, Rect);
hdLayout.Rect := @Rect;
hdLayout.WindowPos := @WPos;
Header_Layout(Header, @hdLayout);
SetWindowPos(Header,
WPos.hwndInsertAfter,
WPos.x,
WPos.y,
WPos.cx,
WPos.cy,
WPos.flags or SWP_SHOWWINDOW);
ListView_EnsureVisible(Handle, 0, FALSE);
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c