Форум: "KOL";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизПроблема с обработкой WM_PAINT в OnMessage Найти похожие ветки
← →
L`Autour © (2008-09-12 09:22) [0]Суть: прога с двумя панелями, на первой панели есть Memo, который нужно отрисовывать вручную, когда он не в фокусе.
Используя такой код:function TForm1.MemoValue1Message(var Msg: tagMSG;
var Rslt: Integer): Boolean;
begin
Result := False;
if (Msg.message = WM_PAINT)and
(Form.ActiveControl <> MemoValue1) then
//тут пока отрисовки нет
Result := True;
end;
Получаю проблему с отрисовкой всего содержимого второй панели. Она отрисовывается, только если выполнять перемещение формы.
← →
exero © (2008-09-12 09:33) [1]Может быть все же рисовать в OnPaint, как Кладов в своей книжке завещал?
← →
L`Autour © (2008-09-12 10:32) [2]Тогда придется в OnPaint делать самому две процедуры отрисовки: по умолчанию (для редактирования) и своей (отрисовка символов уникода в ANSI проге), вместо возможной одной.
← →
exero © (2008-09-12 10:56) [3]А сразу Unicode использовать по каким-то причинам нельзя?
← →
L`Autour © (2008-09-12 11:20) [4]В 98SE и Me не прокатит.
А с нормальной прорисовкой остальных компонент уже справился. Надо было добавить в обработке WM_PAINT MemoValue1.ValidateRect(Msg.hwnd, nil);
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.063 c