Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Embarcadero RAD Studio XE5-XE8,10.x(Seattle, Berl

Автор: Loki04
Дата сообщения: 29.04.2014 07:17
Drubidon
Все бы хорошо, но там несколько тысяч строк, в стрингрид грузится инфа из акссесовской базы через адо
Автор: dred2k
Дата сообщения: 29.04.2014 07:50
Loki04
Ну набросать же простенький тест со стринг-гридом можно. Вот и будет видно - он виновен в чистом виде или вопрос глубже. Дальше на евенты его посмотри, особенно на "свою" отрисовку. Ну и шаг за шагом.
Автор: deks
Дата сообщения: 29.04.2014 11:16
kaz_av

Уточню мысль: кроссплатформенная программа - которая работает на разных платформах. Запускать программу без портирования на разных платформах почти никогда не получается. Какая-то совместимость есть между различными десктопными платформами (и то - без специфических фич платформы, типа iCloud documents для OpenOffice), но вот между мобильными платформами совсем кисло.

Всилу этого факта Opera и VLC для десктопов и мобильных дивайсов - вообще разные проекты, со своим GUI. То есть - сделан порт программы на платформу. Естественно, у них могут быть общие куски невизуального кода. Но портирование связано с серьезной переделкой довольно значительной части программы, а не только "перекомпиляции" и применения "стилей".

Поэтому такой категоричной формулировкой я собственно и предостерегаю от стартовых идей, что можно задействовать какой-то волшебный инструмент и программа "сама" портируется на другую платформу. Скорее всего для приличной программы (нетривиальной) потребуется довольно значительная переделка. И лучше думать об этом процессе не как о написании кросс-платформенной программы, а как о портировании софта на другую платформу. Но уже в процессе портирования можно задействовать определенные технологии, упрощающие жизнь (от xamarin с общим RTL до мультиплатформенных либ/сервисов - DataAbstract, Parse, Facebook SDK, общий API к Push сервисам, etc).
Автор: kaz_av
Дата сообщения: 29.04.2014 15:30
deks

Цитата:
Запускать программу без портирования на разных платформах почти никогда не получается. Какая-то совместимость есть между различными десктопными платформами (и то - без специфических фич платформы, типа iCloud documents для OpenOffice)

Приложения основанные на переносимых фреймвоках, обычно переносятся простой перекомпиляцией. И это могут быть весьма и весьма сложные приложения. Все, разумеется, зависит от того, насколько глубоко приложению необходимо интегрироваться в систему. Приложений, которым никакая интеграция не требуется очень много, даже более того - их большинство. И все они, потенциально, могут быть реализованы на инструментах обеспечивающих легкую переносимость. Ну а уникальная платформозависимая функциональность дописывается под каждую платформу, без этого, в любом случае, никак.


Цитата:
но вот между мобильными платформами совсем кисло.

Все зависит от качества и проработанности фреймвоков. Та же FMX, если бы была сделана качественно, вполне обеспечивала бы такую переносимость в мобильном секторе для некоторого подмножества приложений. Все упирается в качество и покрытие платформенных API. И с первым и со вторым у FMX беда. В этом смысле все совсем кисло.


Цитата:
Всилу этого факта Opera и VLC для десктопов и мобильных дивайсов - вообще разные проекты, со своим GUI.

Я не думаю, что кто-то всерьез рассматривает кросплатформенность между мобильными и десктопными системами. Речь о кроссплатформености обычно идет в рамках целевых платформ одного класса.
Автор: deks
Дата сообщения: 29.04.2014 23:18
kaz_av

Да я маркетинг Эмро вспоминаю - типа, "from single code base"! Злит, что так сильно гадят в мозг - это малополезно. Потому и повторяю - что софт таки нужно портировать. А волшебных инструментов или фреймворков пока не видно)
Автор: LadyOfWood
Дата сообщения: 30.04.2014 12:50

Цитата:
Та же FMX, если бы была сделана качественно, вполне обеспечивала бы такую переносимость в мобильном секторе для некоторого подмножества приложений. Все упирается в качество и покрытие платформенных API. И с первым и со вторым у FMX беда. В этом смысле все совсем кисло.

Там со всем беда, маркетологи они вообще впереди планеты всей, если кто помнит историю Delphi 8 Мне вот интересно соотношение проектов на Delphi VCL vs FireMonkey, что-то мне подсказывает FM останется далеко позади.
Автор: kaz_av
Дата сообщения: 30.04.2014 22:04
LadyOfWood

Цитата:
что-то мне подсказывает FM останется далеко позади

Я сильно удивлюсь, если кто-то использует это уг, как замену VCL.

Автор: LadyOfWood
Дата сообщения: 01.05.2014 00:16

Цитата:
Я сильно удивлюсь, если кто-то использует это уг, как замену VCL.

Если как замену VCL то это ССЗБ, если только для новых проектов.
Автор: kaz_av
Дата сообщения: 01.05.2014 00:43
LadyOfWood

Цитата:
если только для новых проектов

Я имею ввиду, что использование FMX может быть оправдано только желанием сделать приложение для мобильной ОС.
Автор: Drubidon
Дата сообщения: 01.05.2014 06:44
FM это рюши и красивости. VCL - функционал.
Автор: Erazor84
Дата сообщения: 01.05.2014 10:48

Цитата:
FM это рюши и красивости. VCL - функционал.

Та какие ж там красивости в FM? Для VCL можно найти намного больше красивых скинов/компонентов. FM используют только для кросс-платформенности, никто в здравом уме не будет делать десктопное приложение на FM ради рюшечек.
Автор: LadyOfWood
Дата сообщения: 01.05.2014 11:20

Цитата:
никто в здравом уме не будет делать десктопное приложение на FM ради рюшечек.

Ну еще MacOS есть под которую тоже только FM. И красота в FM очень условная.
Автор: dred2k
Дата сообщения: 01.05.2014 15:08
LadyOfWood
+100!
Помнится, обезьяна зело выручила, когда пришлось довольно срочно сделать прогу под винду и мак. Гуй был не сложный, все получилось прекрасно, и главное - быстро... Ну а что-то серьезное лепить на FM я бы пока не стал, да...
Автор: Genitto
Дата сообщения: 02.05.2014 14:27

Цитата:
я заказывал здесь itsvit.org
ТЗ самому пришлось писать
По их словам пишут на эклипсе


Тоже советую, заказывал у них разработку - доволен! Цены супер.
Автор: LadyOfWood
Дата сообщения: 02.05.2014 14:29

Цитата:
Тоже советую, заказывал у них разработку - доволен!

С использованием FireMonkey?
Автор: X11
Дата сообщения: 02.05.2014 14:57
Не, мне сказали, что они работают с эклипсом
Автор: fd00ch
Дата сообщения: 02.05.2014 18:01

Цитата:
С использованием FireMonkey?

нет, конечно. это просто ненавязчивый спам был))
Автор: vizier1966
Дата сообщения: 02.05.2014 21:24
День добрый!
Поставил XE6 у приложения написанного в XE5 все дефолтовае шрифты поменяли размер.
Подскажите как вернуть в спять.
Автор: Frodo_Torbins
Дата сообщения: 03.05.2014 13:44
vizier1966
Систему трогали? Проверьте DPI.
Автор: vizier1966
Дата сообщения: 03.05.2014 15:37
нет, не трогали. подозрение на изменения стиля по умолчанию.
Автор: ZloyBrawler
Дата сообщения: 03.05.2014 16:01

Цитата:
не понимаю, либо лыжи не едут... в TListBox напрочь не работает OnDragDrop в xe6.. может кто у себя проверить? Да и похоже что вобще нигде не работает, я про FMX, если что. Так же свойство окна Visible похоже перепутано с true на false... какой-то бред

Из соседней ветки http://forum.ru-board.com/topic.cgi?forum=35&topic=52532&start=860

Проверил на VCL и FM, события DragX. Подтверждаю что OnDragDrop нифига не робит.)))

Добавлено:
Еще в FM событие DragOver как сумасшедшее генерируется, если даже не двигать мышку и держать на одном месте, а на VCL 1-2 раза в секунду где-то.
Автор: sergionn
Дата сообщения: 04.05.2014 12:53

Цитата:
Поставил XE6 у приложения написанного в XE5 все дефолтовае шрифты поменяли размер.
Подскажите как вернуть в спять.

Под win:
Найти файл FMX.Platform.Win
скопировать этот файл в свой каталог и добавить его в проект:
FMX.Platform.Win in '..\БлаБла\FMX.Platform.Win.pas',
исправить там DefaultWindowsFontSize = 12 на 11;

еще можно переопределить вот этот сервис
IFMXSystemFontService = interface(IInterface)
['{62017F22-ADF1-44D9-A21D-796D8C7F3CF0}']
function GetDefaultFontFamilyName: string;
function GetDefaultFontSize: Single;
end;

как то так:

{$IFDEF MSWINDOWS}
New_IFMXSystemFontService = class( TInterfacedObject, IFMXSystemFontService )
fontService : IFMXSystemFontService ;
function GetDefaultFontFamilyName: string;
function GetDefaultFontSize: Single;
end;

var New_IFMXSystemFontServiceVar : New_IFMXSystemFontService;

function New_IFMXSystemFontService.GetDefaultFontSize: Single;
begin
Result := 11;
end;

// перехват
New_IFMXSystemFontServiceVar := New_IFMXSystemFontService .Create;
New_IFMXSystemFontServiceVar.fontService := IFMXSystemFontService ( TPlatformServices.Current.GetPlatformService(IFMXSystemFontService)) ;
TPlatformServices.Current.RemovePlatformService(IFMXSystemFontService);
TPlatformServices.Current.AddPlatformService(IFMXSystemFontService, New_IFMXSystemFontServiceVar );
{$ENDIF}


Автор: vizier1966
Дата сообщения: 04.05.2014 20:59
Спасибо.
Под win проходит первый вариант - копирование файла.
Переопределение сервиса не работает.
Под маком ни чего не работает.

зы. приложение писано под OSX


Добавлено:
под Win заработал сворой метод, если создание IFMXSystemFontService объекта перенести в секцию initialization или в файл проекта. под OSX все по прежнему
Автор: sergionn
Дата сообщения: 05.05.2014 00:34

Цитата:
приложение писано под OSX

для osx значение для шрифтов берется не из переменных по умолчанию DefaultMacFontSize, а непосредственно из стиля, это связано с размерами ретина дисплеев и способом как fmx устанавливает размер шрифта в канве.
Даже если подредактировав стиль для каждого контрола ты уменьшишь размер шрифта, то на разных дисплеях шрифты будут выглядеть неодинаково, думаю лучше для мака оставить как есть по умолчанию...

п.с. если все-таки хочешь поэкспериментировать с размерами шрифта:
также закинь файл FMX.Platform.Mac себе и поменяй DefaultMacFontSize,
затем для каждого Типа контрола создай копию дефаултного стиля: на контроле правая кнопка мыши - Edit Default style - Apply and Close, так для всех используемых Видов контролов в проекте, все соберется в стилевой компонент TStyleBook, где уже размеры шрифтов сбросятся по умолчанию и будут браться из константы.

Автор: vizier1966
Дата сообщения: 05.05.2014 13:29
спасибо. оставлю как есть.
Автор: Prot_XT
Дата сообщения: 05.05.2014 15:04
Господа, кто уже нормально могёт под андроид ваять? Как приложения типа баз данных делать в XE6 ? Что можно использовать, только SQLitе?
Какое-то время назад пробовал в родной среде приложение писать, но язык блин после Delphi упорно не хочет в голове рождаться, все на pascal скатывается, но и забросил это дело. Еще там проблема была готовую базу данных подсунуть, приходилось маленько напрягаться...
А здесь как дела с этим обстоят?
Автор: miwa
Дата сообщения: 05.05.2014 16:46
Prot_XT
Какой-то вариант interbase еще есть. Готовую базу подсунуть вроде тоже не проблема. Хотя признаться лично у меня дальше хелловорлда (ну, тоесть работающего приложения, дергающего какие-то данные из тестовой базы) дело не пошлО.
Автор: stanzdor
Дата сообщения: 05.05.2014 17:36
Prot_XT,
посмотрите, например, TFDConnection - driverName. я пробывал SQLlite.

насчет положить базу к проекту, смотрите project - deployment
там добавляете ваш файл базы и указываете в каком месте его развернуть на устройстве.
Автор: Prot_XT
Дата сообщения: 06.05.2014 09:18
stanzdor


Цитата:
насчет положить базу к проекту, смотрите project - deployment
там добавляете ваш файл базы и указываете в каком месте его развернуть на устройстве.


Вот спасибо, надо будет этот deployment поподробнее поковырять... Честно говоря смотрел, но HELP не читал, так и не понял для чего это нужно... Теперь понятно.
Автор: rrromano
Дата сообщения: 06.05.2014 10:09
Кто подскажет, с версии ХЕ2 поменялось что-то в компонентах Ribbon? Или все то же самое, что и было?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129

Предыдущая тема: Отмена встречи в Outlook из Excel VBA


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.