FIL
-
Постов
70 -
Зарегистрирован
-
Посещение
-
Победитель дней
4
Сообщения, опубликованные FIL
-
-
вроде ничего удивительного
Ну это как посмотреть. Я вот например удивился)
Если контрол не нативный, это же не повод сделать его наполовину.
-
Заметил, что в FM-приложениях на реальном устройстве отсутствует стандартная подзвучка нажатия кнопок и т.п. действий (которая есть во всех прочих приложениях на Андроиде).
Это так и задумано или я что-то делаю не так?
-
Выяснил что если из ХЕ8 взять файлы:
Datasnap.DSClientRest.pas
Datasnap.DSHTTPClient.pas
Datasnap.DSProxyRest.pas
Datasnap.DSClientMetadata.pas
, то клиет работает корректно.
Но найти в них косяк весьма проблемотично, т.к. изменения в Seattle относительно ХЕ8 слишком кардинальные.
А разработчикам, похоже, это не особо интересно.
-
-
Всем привет!
Решил тут немного поближе познакомиться с технологией DataSnap.
Добрался до функций обратного вызова.
Нашел хороший пример на данную тему: CallbackChannels
После некоторых доработок проект скомпилировался на Delphi 10 Seattle.
Клиент на базе TSQLConnection заработал как и ожидалось, а вот с клиентом на базе TDSRestConnection возникли проблемы:
Ф-ция обратного вызова регистрируется на сервере и сервер тут же закрывает канал
(при этом в обработчике события OnChannelStateChange параметр EventItem.EventType = rChannelClosedByServer).
Соответственно дальше ничего не работает. При этом на сервере в момент регистрации отображается создаваемый канал и какой-то фантомный (см. рис.).
Долго и безуспешно пытался понять в чем проблема и в итоге решил скомпилировать клиента (RESTClientChannels) на ХЕ8.
И... о чудо! - он заработал.
Соответственно вопрос: что разработчики сделали такого с TDSRestConnection и иже с ним в Seattle, что ф-ции обратного вызова перестали работать и как это исправить?
-
Исходя из вышеизложенного, могу предложить понаделать "урезанных" версий программы, где выкинута та или иная часть компонентов/кода, и таким образом попытаться локализовать проблему.
-
У меня ничего не вылетает. Проверял на андроидэмуляторе.
-
-
-
Пример отрисовки текста, в том числе и с разноцветными буквами: Как вывести (отрисовать) текст по произвольной дуге
-
Ну если одна строка кода - это нагромождение, то ищи какие-нибудь стандартные методы (или жди когда это кто-нибудь сделает за тебя).
-
Данные методы не передают фокус ввода в заданную ячейку.
Данные методы передают фокус.
Если надо активировать ввод (редактор ячейки), то можно воспользоваться для этого методом TColumn.ShowEditor.
-
StringGrid.SelectCell()
StringGrid.SelectColumn()
StringGrid.SelectRow()
StringGrid.Selected -
В конструкторе и деструкторе ерунда понаписана.
-
Тогда можно использовать:
- ini-файл;
- типизированный файл;
- писать каждый папаметр с новой строки (TStringList и т.п.);
- TFileStream (на худой конец)
-
Один из вариантов:
with TStringStream.Create do try LoadFromFile('d:\11.txt'); Edit1.Text := DataString; finally Free; end;
-
И это все просто чтобы считать/записать строку?
-
Одно выглядит странным: метод CreateBitmap объекта BitmapItem создает битмап в никуда лишь для того, чтобы программист потом вручную запихивал этот битмап обратно в BitmapItem)
Да и св-во TransparentColor, которое учитывается лишь в одном методе, а в остальных случаях его изменение ничего не дает и лишь сбивает с толку...
Может просто в CreateBitmap еще один параметр добавить?
-
-
Да, этот вариант отлично работает. Ни со стилями заморачиваться не надо, ни доп. ресайзы делать)
-
Это можно обойти добавив свой стиль для SpeedButton.
Поясню немного:
1. Заходим в редактор стиля SpeedButton.
2. Сохраняем стиль.
3. В текстовом редакторе удаляем строку FixedHeight = ... и сохраняемся.
4. В редакторе стилей загружаем стиль обратно.
5. Готово)
Upd: чуть самое главное не забыл)
Чтобы это все заработало в ФМ, надо подшлифовать напильником:
procedure TForm1.SpeedButton1ApplyStyleLookup(Sender: TObject); begin {$IFDEF ANDROID} SpeedButton1.RecalcSize; {$ENDIF} end;
-
Интересует вопрос, возможно ли программно добраться до свойств стиля FixedHeight и FixedWidth, чтобы не надо было создавать свой дополнительный стиль?
-
Так я же уже написал, что в андроидовском стиле SpeedButton имеет фиксированную высоту, которая не меняется.
Это можно обойти добавив свой стиль для SpeedButton.
-
Что-то не пойму о чем вообще речь...
В Win привязки SpeedButton работают как надо.
В Андроиде высота SpeedButton не меняется по умолчанию.
Выделение части строки, мышкой
в TMemo
Опубликовано · Изменено пользователем FIL
Первое, что пришло на ум:
Вроде даже работает)