Лидеры
Популярный контент
Показан контент с высокой репутацией 31.05.2016 во всех областях
-
Что выбрать VCL или FMX?
Равиль Зарипов (ZuBy) и 2 других отреагировал krapotkin за вопрос
http://www.fmxexpress.com/mix-vcl-and-firemonkey-forms-in-delphi-xe5-firemonkey-on-windows/ и видео3 балла -
Дата/время в сервисе
Равиль Зарипов (ZuBy) и ещё один отреагировал Евгений Корепов за вопрос
У вас ошибка в коде, неверно SDT:=DateTimeToStr(Now()), а вот так верно SDT:=DateTimeToStr(ADateTime,FormatSettings). Вы не использовали выставленные в FormatSettings значения. Но есть и другие варианты хранения: var IniFile: TIniFile; SDT: string; FS: TFormatSettings; ADateTime : TDateTime; ADateTimeUnix : Int64; begin IniFile := TIniFIle.Create(System.IOUtils.TPath.Combine( System.IOUtils.TPath.GetDocumentsPath, 'D.ini')); try ADateTime:=Now(); // Ваш вариант FormatSettings.ShortDateFormat:='yyyy-mm-dd'; FormatSettings.DateSeparator := '-'; FormatSettings.LongTimeFormat := 'hh:nn:ss'; FormatSettings.TimeSeparator := ':'; SDT:=DateTimeToStr(ADateTime,FormatSettings); // Обратите внимание на второй параметр // Вариант с использованием настроек устройства FS:=TFormatSettings.Create; // В FS теперь настройки локали устройства SDT:=DateTimeToStr(ADateTime,FS); // Вариант с использованием ISO8601 SDT:=DateToISO8601(ADateTime); //Вариант хранения в Unix формате - наиболее надежный в плане обратимости ADateTimeUnix:=DateTimeToUnix(ADateTime); SDT:=ADateTimeUnix.ToString; IniFile.WriteString('SERVER','LastOnline',SDT); finally IniFile.free; end; end; Если не нужна человекочитаемость ini файла, то лучше хранить в UNIX формате2 балла -
2 балла
-
ITextActions не работают под Android
Rusland и ещё один отреагировал asviridenkov за вопрос
Спасибо, я в итоге нашел как исправить - нужно при окончании выделения копировать его в FTextService.Text и плюс обязательна корректная реализация GetSelectionBounds. Но то, что оно не работает через ITextActions - не очень хорошо. Параллельно еще одна проблема выяснилась - невозможно показать контекстное меню, если нет клавиатуры на экране. В коде жестко зашито if TVirtualKeyboardState.Visible in VirtualKeyboardAndroid.VirtualKeyboardState then DoShowContextMenu; Это неправильно, т.к. не позволяет копировать текст из read-only контролов без показа клавиатуры, которая тут не нужна.2 балла -
Нужно использовать myObject.Release, а не Free. Только обратите внимание, что Release - это отложенное уничтожение, т.е. моментально компонент исчезает с формы, а вот уничтожится - после, когда-нибудь, когда до него дойдет очередь. Помимо этого, если ссылка на объект есть где-то в поле класса, то нужно заnil-ить ее, дабы уменьшить счетчик ссылок.1 балл
-
ObjectiveC class CTCallCenter could not be found
Равиль Зарипов (ZuBy) отреагировал Brovin Yaroslav за вопрос
Поскольку ios библиотеки с апи подкгружаются динамически. Эта ошибка может означать, что реально на момент обращения фреймворк "CoreTelephony.framework" не был загружен. Загрузка обычно делается в каждом rtl iosapi юните так: const libAddressBook = '/System/Library/Frameworks/AddressBook.framework/AddressBook'; {$IF defined(IOS) and NOT defined(CPUARM)} initialization AddressBookModule := dlopen(MarshaledAString(libAddressBook), RTLD_LAZY); finalization dlclose(AddressBookModule); {$ENDIF IOS} end. Я действительно не вижу в iOSapi.CoreTelephony.pas кода по загрузке библиотеки. Поэтому вы можете добавить код выше в свой проект для форсирования загрузки, изменив libAddressBook на: const CoreTelephonyFwk: string = '/System/Library/Frameworks/CoreTelephony.framework/CoreTelephony';1 балл -
Дата/время в сервисе
Rusland отреагировал Евгений Корепов за вопрос
mm - Displays the month as a number with a leading zero (01-12). If the mm specifier immediately follows an h or hh specifier, the minute rather than the month is displayed. nn - Displays the minute with a leading zero (00-59). http://docwiki.embarcadero.com/Libraries/XE5/en/System.SysUtils.FormatDateTime1 балл -
Дата/время в сервисе
Евгений Корепов отреагировал master webs за вопрос
FormatDateTime('yyyy-mm-dd hh:nn:ss', Date) так не пробовал ?1 балл -
После обновления на Андроид 6.01
zairkz отреагировал Кривяков Виталий за вопрос
Я уже писал об этой проблеме. Её не решить, что-то совсем внутри XE7 делает некорректно.1 балл -
Исследование: При разворачивании приложения на планшете, картинка на второй вкладке табконтрола появляется. При разворачивании на телефонах исчезает. В дизайне картинка видна. Запишем в загадки fmx.1 балл
-
1 балл
-
Что то мне подсказывает, что Delphi7 не догадывается про Андройд 6.0 ))1 балл
-
1 балл
-
ITextActions не работают под Android
Rusland отреагировал Brovin Yaroslav за вопрос
Я сообщил человеку, занимающимся текстом, об этой проблеме. Будет разбираться. Если будет новая информация, я вам ее передам.1 балл -
Основываясь на фразе "создании приложения только для Windows" Сама Embarcadero продолжает говорить, что под Windows ничего лучше VCL нет. Используя VCL вы можете задействовать все возможности, предоставляемые операционной системой. Если чего-то будет нехватать для работы (в чем я сомневаюсь, арсенал компонентов и контролов, созданных в рамках VCL, весьма обширен) - к вашим услугам полный набор WinAPI. Все VCL контролы основываются на вызовах WinAPI функций, что гарантирует (ну да, громко сказано, конечно) их быструю работу, поскольку она контролируется оптимальным кодом самой ОС. Помимо этого, некоторые задачи практически невозможно решить без задействования функций ОС. Например, хуки, сервисы, нестандартное поведение при движении мыши (WM_NCHITTEST)... Поведение контролов также будет 100% таким, как пользователь привык видеть во всех приложениях родной ОС. Да, на FMX тоже можно использовать функции ОС и нативные контролы. Но микс нативных и "собственных" контролов приводит к извращениям по расположению и компоновке контролов, т.к. нативный контрол всегда отрисуется поверх собственных. Также, т.к. Windows основана на механизме передачи оконных сообщений - есть определенные сложности в применении WinAPI. Ну и - если вы задействуете WinAPI функции, т.е. привяжетесь к конкретной ОС - смысл тогда использовать FMX? Резюмируя - если работа действительно планируется только под Windows - используйте VCL. Если хоть в отдаленном будущем мелькает возможность работы приложения на других платформах - то сразу нужно работать на FMX, этим вы избавите себя от проблем портирования приложения.1 балл
-
Внутренние гиперссылки
Andrew отреагировал asviridenkov за вопрос
THtPanel/THtLabel http://delphihtmlcomponents.com/1 балл