Форум: "KOL";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизМеню под WinCE - это баг? Найти похожие ветки
← →
igg © (2009-06-01 01:10) [0]Проект для тестирования меню под WinCE. Выбросил всё лишнее, выглядит он так:
program Test;
{$mode delphi}
uses Windows, Messages, KOL;
procedure OnMenu(Dummy: Pointer; Sender: PMenu; Item: Integer);
begin
if Item = 0 then begin
MsgOK("OK");
end else if Item = 1 then begin
Applet.Close;
end;
end;
var MainDlg: PControl;
menu: PMenu;
begin
MainDlg := NewForm(Applet, "Test");
menu := NewMenu(MainDlg, 0,
["OK", "Cancel"],
TOnMenuItem(MakeMethod(nil, @OnMenu)));
Run(MainDlg);
end.
Пробую под Win32 - всё работает правильно, появляется горизонтальное меню из двух пунктов - OK и Cancel. Нажатие на ОК вызывает сообщение, нажатие на Cancel закрывает окно.
Теперь компилирую то же самое под WinCE - наблюдаю странную картину. Надписи как бы сдвинулись, первый пункт меню - Cancel, второй - вообще без надписи. При этом работают они по-старому, то есть, нажатие на Cancel приводит к появлению надписи "ОК", а нажатие на пустую менюшку - закрывает программу.
Это баг? Как с ним бороться?
← →
igg © (2009-06-01 13:08) [1]Бьюсь второй день - всё без толку. Отображается меню со сдвигом, а отрабатывает без сдвига, причем только на WinCE, под Win32 - всё в порядке.
Версии компилятора и библиотеки:
Lazarus-0.9.27-20287-fpc-2.3.1-20090529-cross-arm-wince-win32.exe
Lazarus-0.9.27-20287-fpc-2.3.1-20090529-win32.exe
kol-ce-2.80.3.zip
Компилирую командойfpc.exe -Twince -Parm -XX -CX -Xs -FuC:\LAZARUS\KOL\kol -Fccp1251 TEST.PAS
Странно, но меню - это же основы! Неужели никто не пишет ничего под WinCE на чистом KOL? Как может работать неправильно столь простая конструкция?
Как может остаться незамеченной такая ошибка?
Неужели опять какой-нибудь ключ компилятора забыл?
← →
mdw © (2009-06-02 11:03) [2]Честно говоря, ни разу не использовал маинменю в winCe, обычно пользуюсь тулбаром. Возможно что ошибка есть. Попробуйте версию 2.88. v2.80 вообще, насколько помню, довольно глючная была и под Delphi.
← →
igg © (2009-06-02 12:36) [3]Так насколько я понял, kol-ce 2.80.3 - это последняя портированная для CE версия. Просто 2.88 вряд ли пойдет, зачем-то же делали порт kol-ce...
А меню - это очень нужная вещь. Под WM5, WM6 тулбара нет, остается только меню из двух пунктов, назначаемое на две софт-клавиши. Без него полноценное приложение для КПК/коммуникатора не сделать.
Имеет ли смысл пытаться писать под WM5/6 на FPC с использованием непортированной KOL, или это бессмысленно?
← →
mdw © (2009-06-02 13:05) [4]На SVN есть 2.88.
← →
mdw © (2009-06-02 13:06) [5]В смысле для WinCE. последняя ревизия 297.
← →
mdw © (2009-06-02 13:16) [6]
> А меню - это очень нужная вещь. Под WM5, WM6 тулбара нет,
> остается только меню из двух пунктов, назначаемое на две
> софт-клавиши.
Есть. Просто реализовано как меню. Я специально делал компонент KOLMenuToolbarCE для отображения в виде тулбара. В WM6 не тестировал (нет у меня), но в WM5 работает нормально, + добавил срабатывание кнопки при удержании (типа как в фотошопе).
← →
igg © (2009-06-02 17:01) [7]Под WM5/6 тоже можно сделать тулбар, и он будет отображаться как тулбар - это режим совместимости. Можно и меню из 6 пунктов сделать вместо двух. Выглядеть будет так же, как выглядело под WM2003 и более ранними. Но потеряется возможность использовать софт-кнопки для вызова выпадающих меню.
Точнее, можно, в принципе, их перехватить и заставить вызывать соответствующие пункты меню.... Но зачем? Теряется самое главное - привычный вид всех современных приложений. Пользователь WM5/6 привык, что внизу у него меню, выглядит оно вот так, в виде надписей над левой и правой софт-клавишами, и для его использования нужно нажимать эти самые софт-клавиши. Не стоит без существенных на то оснований отступать от принятых и привычных пользователю канонов.
Потому мне и хочется, чтобы работало родное меню.
Как качать с SVN - не спрашиваю, это уже не сюда, наверное, а к "Начинающим", поищу там faq какой-нибудь. Спасибо за наводку.
← →
mdw (2009-06-02 23:59) [8]
> Как качать с SVN - не спрашиваю, это уже не сюда, наверное,
> а к "Начинающим", поищу там faq какой-нибудь. Спасибо за
> наводку.
Да могу просто выложить, проблем то...
← →
Yury Sidorov (2009-06-03 11:46) [9]Возможно проблемы из-за fpc-2.3.1
С fpc 2.2.4 все прекрасно работает, в том числе и твой пример.
← →
igg © (2009-06-03 14:33) [10]Yury Sidorov:
Интересно, у меня есть Lazarus 0.9.26.2 с fpc 2.2.2, попробую на нем.
mdw:
Конечно, было бы очень удобно. Буду благодарен.
← →
igg © (2009-06-03 15:56) [11]Yury Sidorov:
Скачал, попробовал на 2.2.4 - действительно, всё правильно работает. Действительно, виновата версия 2.3.1. Спасибо большое за помощь.
← →
mdw © (2009-06-03 16:06) [12]Вот ссылка kolnmck.kolmck.net/files/kolce/288/KOL-ce-301.7z
← →
igg © (2009-06-03 22:00) [13]mdw, спасибо, скачал.
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.301 c