Использую Lazarus 26, linux SUSE 11
В связи с отсутствием в tedit правого выравнивания, не могу его использовать для ввода целых и вещественных чисел
Решил использовать memo поле, но под виндой высота memo1.height может уменьшаться до нуля, а вот в линуксе
меньше 35 никак не хочет.Что-это за баг ?
Или может у кого -то есть способ борьбы с отсутствием правого выравнивания в Tedit ?
Я уже пробовал тупой перерисовкой канваса
procedure TForm1.Button1Click(Sender: TObject);
var
mLeft, mWidth: Integer;
GString: string;
Rgn: TRect;
TheCanvas: TControlCanvas;
begin
TheCanvas := TControlCanvas.Create;
try
TheCanvas.Control := Edit11;
GString := Edit11.Text;
Rgn := Edit11.ClientRect;
TheCanvas.FillRect(Rgn);
mWidth := TheCanvas.TextWidth(GString);
mLeft := Rgn.Right - mWidth - 4;
TheCanvas.TextRect(Rgn, mLeft, 0, GString);
finally
TheCanvas.Free;
end;
но в винде работает а в Linux никакой реакции ?
Что за проклятие ?
Говорят, что в 28 будет выравнивание Tedit ?
Пробовал ставить 27 версию и 26.1 , так у меня под виндой при пересборке требует кучу dll :
libgdk-win32-2.0-0.dll
libgdk-win32-2.0-0.zip
libgdk_pixbuf-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libpango-1.0-0.dll
нашел, подбросил lazarus не находит точку входа,в Linux побоялся ставить, потом долго возвращать назад.
Минимальная высота компонента tmemo Linux
Модератор: Модераторы
Пробовал ставить 27 версию и 26.1 , так у меня под виндой при пересборке требует кучу dll :
libgdk-win32-2.0-0.dll
libgdk-win32-2.0-0.zip
libgdk_pixbuf-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libpango-1.0-0.dll
Так вы с какими виджетами хотите собрать Lazarus в Windows?
Я не понял, о каком выравнивании идет речь. Это не то?: Edit1.Alignment := taRightJustify;
Я обычно собираю одну и ту же версию на WinXP и на SUSE Linux.
Просто по ходу поиска нормального tedit прочитал, что в 27 версии реализовано выравнивание вправо нарвался на ситуацию, что инсталяционный файл под винду не доставляет указанных выше библиотек,
боюсь тоже будет и под линуксом.
Причем сразу после инсталляции работает, а вот как начинаю пересобирать после установки доп.компонент , после перезапуска вылетает на ошибку, что нет указанных выше библиотек.
Добавлено спустя 2 минуты 32 секунды:
Да это, но его в 26 версии и ниже нет.
Добавлено спустя 1 минуту 56 секунд:
и вдогонку почему все же в linux-ой версии Lazarus ограничена минимальная высота tmemo
Просто по ходу поиска нормального tedit прочитал, что в 27 версии реализовано выравнивание вправо нарвался на ситуацию, что инсталяционный файл под винду не доставляет указанных выше библиотек,
боюсь тоже будет и под линуксом.
Причем сразу после инсталляции работает, а вот как начинаю пересобирать после установки доп.компонент , после перезапуска вылетает на ошибку, что нет указанных выше библиотек.
Добавлено спустя 2 минуты 32 секунды:
Logo писал(а):Я не понял, о каком выравнивании идет речь. Это не то?: Edit1.Alignment := taRightJustify;
Да это, но его в 26 версии и ниже нет.
Добавлено спустя 1 минуту 56 секунд:
и вдогонку почему все же в linux-ой версии Lazarus ограничена минимальная высота tmemo
и вдогонку почему все же в linux-ой версии Lazarus ограничена минимальная высота tmemo
Хм, попробовал в Мандриве, действительно 35 минимум.
Лазарус 0.9.27 от 26.01.09 fpc 2.2.3
только что нашел и прилепил rxfpx, беру компонент из rx :
TCurrencyEdit , у него есть
свойство Alignment := taRightJustify; НО в винде оно работает, а линуксе - никакой реакции
Причем уже в разных иксах запускал и в GNOM и в КDE .
Добавлено спустя 9 минут 46 секунд:
А выравнивание вправо работает у Tedit в этой версии ?
Добавлено спустя 2 часа 9 минут 54 секунды:
На Linux поставил lazarus-0.9.27.18500-20090130.i386.rpm полет нормальный выравнивание у tedit работает
Как теперь проставить на винду Lazarus-0.9.27-18500-fpc-2.2.3-20090130-win32.exe , где взять нормальные dll
libgdk-win32-2.0-0.dll
libgdk_pixbuf-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libpango-1.0-0.dll
и почему их нет в инсталляции ?
TCurrencyEdit , у него есть
свойство Alignment := taRightJustify; НО в винде оно работает, а линуксе - никакой реакции
Причем уже в разных иксах запускал и в GNOM и в КDE .
Добавлено спустя 9 минут 46 секунд:
serg_iv писал(а):и вдогонку почему все же в linux-ой версии Lazarus ограничена минимальная высота tmemo
Хм, попробовал в Мандриве, действительно 35 минимум.
Лазарус 0.9.27 от 26.01.09 fpc 2.2.3
А выравнивание вправо работает у Tedit в этой версии ?
Добавлено спустя 2 часа 9 минут 54 секунды:
На Linux поставил lazarus-0.9.27.18500-20090130.i386.rpm полет нормальный выравнивание у tedit работает
Как теперь проставить на винду Lazarus-0.9.27-18500-fpc-2.2.3-20090130-win32.exe , где взять нормальные dll
libgdk-win32-2.0-0.dll
libgdk_pixbuf-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libpango-1.0-0.dll
и почему их нет в инсталляции ?
- Alexx2000
- постоялец
- Сообщения: 491
- Зарегистрирован: 25.10.2006 00:22:07
- Откуда: Мытищи
- Контактная информация:
alexmai писал(а):Как теперь проставить на винду Lazarus-0.9.27-18500-fpc-2.2.3-20090130-win32.exe , где взять нормальные dll
libgdk-win32-2.0-0.dll
libgdk_pixbuf-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libpango-1.0-0.dll
и почему их нет в инсталляции ?
Потому что они вообще то не обязательны. Скорее всего у вас в настройках пересборки Лазарус в качестве виджетсета выбран GTK2, измените на Win32.
Alexx2000 писал(а):Потому что они вообще то не обязательны. Скорее всего у вас в настройках пересборки Лазарус в качестве виджетсета выбран GTK2, измените на Win32.
Спасибо Alexx2000 за подсказку по 27 версии.
Установил под винду (Lazarus-0.9.27-18500-fpc-2.2.3-20090130-win32.exe) и линукс (lazarus-0.9.27.18500-20090130.i386.rpm).
На обеих закладках параметров сборки Lazarus поставил win32/64 , после чего все доп. компоненты (indy10,zeos6.6.0,fibl)
установились
Хотелось бы остальные компоненты типа TCalcedit довести "до ума" . Сделать выравнивание вправо, контроль ввода символов и разделителя.
