Форум: "KOL";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
ВнизПомогите разобраться с отрисовкой MainMenu1DrawItem Найти похожие ветки
← →
Аид (2004-03-12 08:16) [0]Вообщем у MainMenu есть событие DrawItem, в котором можно написать код своей отрисовки (включая ownerDraw в Items меню). всё рисует, но как сделать прорисовку на выделение?? там в событие передаётся TDrawState, я попробовал все - но при наведении мышки не выделяется... может там нужна комбинация? Ниже код:
function TForm1.MainMenu1MeasureItem(Sender: PObj; Idx: Integer): Integer;
begin
Result := (29 + 6) or ((29 * 2) shl 16);
end;
function TForm1.MainMenu1DrawItem(Sender: PObj; DC: HDC; const Rect: TRect;
ItemIdx: Integer; DrawAction: TDrawAction;
ItemState: TDrawState): Boolean;
begin
if ItemState=[odsSelected] then LineTo(DC,200,200);
TextOut( DC, 29 + 6, 6, "Hello!", 6 );
end;
эту линию он не рисует :(
← →
<Falcon> (2004-03-12 13:10) [1]А где то этого карандаш находился? Возможно нужно еще MoveTo перед прорисовкой линии сделать? Не уверен, но проверь...
← →
Аид (2004-03-12 17:59) [2]всё, нашёл... просто надо было вот так написать:
function TForm1.MainMenu1DrawItem(Sender: PObj; DC: HDC; const Rect: TRect;
ItemIdx: Integer; DrawAction: TDrawAction;
ItemState: TDrawState): Boolean;
begin
if odsSelected in ItemState then LineTo(DC,200,200);
TextOut( DC, 29 + 6, 6, "Hello!", 6 );
end;
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.035 c