Форум: "KOL";
Текущий архив: 2009.04.19;
Скачать: [xml.tar.bz2];
ВнизVGA и размеры формы. Найти похожие ветки
← →
earl Grey (2007-12-27 07:21) [0]Вывожу в рантайме размер формы в пикселях и на QVGA и на VGA одинаковый: 320х188 (Form.Width x Form.Heigth соответственно). Копался и в KOL.pas и в mirror.pas - ответа не нашел. Никто не знает куда половина площади пропала?
← →
tim128 © (2007-12-27 10:29) [1]Насколько я знаю WM2003 на VGA кпкшках использует размер экрана QVGA. Есть специальные проги которые обеспечивают VGA режим (например ozVGA или Nyditot Virtual Display). При их использовании видимо и размер формы увеличится, но еще не проверял
← →
mdw © (2007-12-27 13:05) [2]Короче, ситуация такая. По умолчанию на VGA экране приложение работает в режиме QVGA. Чтобы включить поддержку VGA, добавь в приложение такой ресурс:
HI_RES_AWARE CEUX DISCARDABLE
BEGIN
0x0001
END
Обрати внимание, что DPI будет равно 120.
← →
earl Grey (2007-12-30 17:40) [3]Посмотрел в kol-ce.rc увидел в конце файла нужную строчку - раскоментировал. Теперь борюсь с компилятором ресурсов. Не хочет гад:
--------------
C:\lazarus\fpc\2.2.0\bin\i386-win32>arm-wince-windres KOL-CE.rc KOL-CE.res
"arm-wince-gcc" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
arm-wince-windres: no resources
--------------
При чем тут gcc? и где его брать?
← →
earl Grey (2007-12-30 18:25) [4]Отбой.. Выручил просто windres. Все равно не пойму: это у меня руки кривые, или .. ?
← →
tim128 © (2008-01-08 00:47) [5]
> Обрати внимание, что DPI будет равно 120.
А можно поподробнее, как определить dpi, какое dpi в qvga режиме? Я хочу размер кнопок под пальцы автоматически подобрать в зависимости от dpi
← →
mdw © (2008-01-08 13:06) [6]
> А можно поподробнее, как определить dpi
GetDeviceCaps(LOGPIXELSX\LOGPIXELSY)
> какое dpi в qvga режиме
96 dpi
← →
earl Grey (2008-01-09 15:00) [7]Только с подбором под пальцы может ерунда получиться. Это "логические дюймы". Сторона моего экрана в "логических" для QVGA 240/96 = 2.5"", для VGA 480/120=4", а в реальных ~1.75"
← →
tim128 © (2008-01-09 15:51) [8]для VGA 192 dpi GetDeviceCaps возвращает, так что все нормально получается
← →
mdw © (2008-01-09 15:55) [9]
> для VGA 192 dpi GetDeviceCaps возвращает, так что все нормально получается
А ну да, точно, с 120 dpi я тупанул...
← →
tim128 © (2008-01-09 23:03) [10]А есть ли возможность запустить на КПК приложение в полный экран, так чтобы сверху и снизу не оставались полоски ОС?
← →
mdw © (2008-01-10 11:46) [11]
> А есть ли возможность запустить на КПК приложение в полный
> экран, так чтобы сверху и снизу не оставались полоски ОС?
Да.
← →
tim128 © (2008-01-10 12:33) [12]
> > А есть ли возможность запустить на КПК приложение в полный
>
> > экран, так чтобы сверху и снизу не оставались полоски
> ОС?
>
> Да.
А как? :)
← →
mdw © (2008-01-10 13:37) [13]Я делал примерно так. Тут немного накручено, это сделано для корректной работы при изменении ориентации экрана. При изменении ориентации экрана должна вызываться эта процедура.
procedure TTextOutForm.FullScreen;
var R: TRect;
W, sH, tH, sW: Integer;
begin
W:= SHFindMenuBar(Form.GetWindowHandle);
GetWindowRect(W, R); tH:= R.Bottom-R.Top; sH:= ScreenHeight; sW:= ScreenWidth;
if FIsFullScreen then begin
R.Bottom:= sH + tH+1; R.Top:= sH+1;
MoveWindow(W, R.Left, R.Top, R.Right-R.Left, tH, False);
SHFullScreen(Form.Handle, SHFS_HIDETASKBAR or SHFS_HIDESIPBUTTON);
Form.BoundsRect:= MakeRect(0, 0, sW, sH);
Form.HasBorder:= False; Form.HasCaption:= False;
end
else begin
R.Top:= sH - tH; R.Bottom:= sH;
MoveWindow(W, R.Left, R.Top, R.Right-R.Left, tH, False);
Form.BoundsRect:= MakeRect(0, GetWorkArea.Top, sW, sH-tH);
Form.HasBorder:= False; Form.HasCaption:= False;
// Applet.ProcessMessages;
SHFullScreen(Form.GetWindowHandle, SHFS_SHOWTASKBAR {or SHFS_HIDESIPBUTTON});
end;
end;
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2009.04.19;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.053 c