Доска почета


Popular Content

Showing most liked content since 19.03.2017 Во всех областях

  1. Вышло обновление до версии 1.5.0: - Исправлены переходы в глоссарии - Значительно уменьшен размер приложения - Настройки автоматической проверки обновлений - [Windows] Переработка приложения для Windows - [Windows] Добавлены анимации перехода - [Windows] Минимальные размеры окна ограничены 800 пикселями по ширине и 600 по высоте - [Android] Системная строка подкрашивается в "фирменный" синий во всех режимах работы приложения - [Android] Отключена анимация перетаскивания элементов бокового меню - [Android] Индикатор загрузки - [Android] Навигационная панель больше не перекрывает интерфейс приложения - [Android] Исправлена ошибка с сохранением PDF-документа - [Android] Увеличена скорость вывода информации и тестирования - [Android] Немного изменен внешний вид экрана вывода результата тестирования Ссылка на скачивание Android-версии: https://yadi.sk/d/edIZR2VuuRFce Ссылка на скачивание Windows-версии: https://yadi.sk/d/iIeC0OE8ukMoi
    7 likes
  2. Сделал маленький пример, как использовать Binding Expressions в Design Time. По прилагаемому снимку экрана легче ориентироваться в выборе компонент. Подробнее на эту тему здесь: http://docwiki.embarcadero.com/RADStudio/Berlin/en/Using_Custom_Format_and_Parse_Expressions_in_LiveBindings pLBExpr1.zip
    5 likes
  3. На случай "своими руками", я бы порекомендовал Вам копать в сторону WebRTC. Разумеется все зависит от конечных задач, стоящих перед Вашей программой. Судя по всему - это организация потокового видео в режиме реального времени на соответствующие сервисы. А это значит, что: - нужно организовать формирование и передачу RTMP (RTSP) потока, с чем в Delphi (если о нем речь идет) есть определенные сложности) (в ситуации с С++ будет немного проще); - нужно использовать кодеки (encoder), формат которых поддерживается теми системами, на которых вы хотите видеть воспроизведение потока. Аналогично, как и в вопросе с rtmp-потоком, ситуация с реализацией в Delphi будет сложнее (хотя тоже можно); - что касается конвертации кадров из одного формата в другой, то тут все немного проще. В интернете полно алгоритмов описывающих конвертацию битмапа из одного формата в другой. Разумеется - не все так просто. Поскольку необходимо не просто конвертировать кадры, перед тем как передать их энкодеру, но еще и правильно от энкодера получить сам поток и передать его. После энкодера, конечно, идут не просто "кадры". В зависимости от настроек энкодера, сначала идет "ключевой кадр" (и он повторяется с определенной периодичностью), а за ним последовательность "фреймов" - "описывающих" лишь изменения в "ключевом кадре". Кратко как-то так... В любом случае, я бы порекомендовал Вам сначала пошарить по ресурсу, описывающему работу с потоковым видео. Просто понять как это работает, в принципе. Ну и многое можно там же подчерпнуть. Например, просто как оптимальнее настроить энкодер для трансляции того или иного видео.
    4 likes
  4. Ссылка: http://delphifmandroid.blogspot.ru/2017/03/android-studio.html Автор: Ефимов Андрей Описание:
    3 likes
  5. У большинства хостингов, светить портом sql сервера наружу считается ересью, что в принципе правильно. Поэтому обычная практика - ssh туннель до хостера и внутри него соединение с sql. Вот хороший пример настройки на мастерхосте https://masterhost.ru/support/hosting/work-with-data/program/#MySQL-tunnel Илья, если вы хотите из приложения коннектится по ssh и подключаться к sql, то лучше этого не делать - вам придется распространять вместе с приложением ключи (или логин с паролем) ssh,и предрекаю что через неделю ваш хостинг будет рассылать спам и майнить криптовалюту для злых хакеров.
    3 likes
  6. Увеличил количество сообщений с 20 до 30. Предложение хорошее. Сейчас количество ответов в единицу времени уже гораздо больше, чем даже год назад. Так что предложение хорошее.
    3 likes
  7. Получите от медицинского центра разрешение на использование их логотипа. Можно на русском языке. Текст произвольный - поручаем Kitty изготовление приложения и разрешаем использование логотипов, торговых марок, фирменных наименований и т.д. в приложениях. Подробнее здесь https://play.google.com/intl/ru/about/ip-deception-spam/impersonation-ip/ И отправьте скан (pdf к примеру) этого письма в гугл, подробности тут https://support.google.com/googleplay/android-developer/answer/6320428 Последнее время все сложнее публиковать приложения, правила уже балансируют на грани маразма. Одно моё приложение заблокировали по причине того что я "выдавал" себя за магазин линолиума в какой то немецкой деревушке - логотип приложения был немного искаженной зеркальной копией логотипа этого магазина, так же отличались цвета - у магазина желтый, у приложения оранжевый. Вот такие дела... Так же сильно зависит от места модерации - если повезет попасть в британский офис, то вам досконально объяснят причину блокировки, приведут примеры правильного и не правильного решения вашего вопроса. Вот пример из моей практики: Если не повезет попасть в подмосковье - то вы не получите комментариев, апелляция будет проигнорирована и относится к вам будут как к ничтожеству. Российская специфика - мальчик получивший работу в Великом Гугле, благодаря двоюродному дяде, сам становится Великим. И естественно он обязан быть гавном, так у него в должностной инструкции написано ;-)
    3 likes
  8. Рекомендую при первом запуске генерировать GUID (System.SysUtils.CreateGUID), записывать в файл и использовать его. Привязка к железу это хорошо, но требует дополнительных разрешений, не понятных пользователю. И китайцы рано или поздно выпустят что то такое, где ваш код работать не будет.
    2 likes
  9. Запретить отключение экрана приложения в Андроид: в файл проекта (Project - View Source) добавить строки: // в uses {$IFDEF ANDROID} Androidapi.Helpers, Androidapi.JNI.App, Androidapi.JNI.GraphicsContentViewText, {$ENDIF} {$R *.res} // и далее - перед Application.Initialize begin {$IFDEF ANDROID} TAndroidHelper.Activity.getWindow.addFlags(TJWindowManager_LayoutParams.JavaClass.FLAG_KEEP_SCREEN_ON); {$ENDIF} Application.Initialize; ...
    2 likes
  10. Upd Используйте Call Stack (View > Debug Windows)
    2 likes
  11. Result у Вас какого типа? Попробуйте без него: xml_result:=HTTPGet('https://geocode-maps.yandex.ru/1.x/?geocode='+ 'Кунгур'+ ',+' +street+ '+улица,+дом+'+ house);
    2 likes
  12. Изменить размер шрифта у ComboBox можно таким образом: procedure TForm1.ComboBox1ApplyStyleLookup(Sender: TObject); var Item : TListBoxItem; i : Integer; begin for i := 0 to ComboBox1.Count-1 do begin Item := ComboBox1.ListItems[i]; Item.Font.Size := 18; Item.StyledSettings := Item.StyledSettings - [TStyledSetting.Family,TStyledSetting.Size,TStyledSetting.FontColor]; end; end;
    2 likes
  13. проверка интернета function CheckInet: boolean; var aResp: IHTTPResponse; aHTTP: THTTPClient; begin Result := false; aHTTP := THTTPClient.Create; try try aResp := aHTTP.Head('http://google.com'); Result := aResp.StatusCode < 400; except Result := false; end; finally FreeAndNil(aHTTP); end; end; get запрос function HTTPGet(const aURL: string): string; var aHTTP: THTTPClient; aResp: TStringStream; begin Result := 'Error'; aResp := TStringStream.Create('', TEncoding.UTF8); aHTTP := THTTPClient.Create; try try aHTTP.Get(aURL, aResp); Result := aResp.DataString; except Result := 'Error'; end; finally FreeAndNil(aHTTP); FreeAndNil(aResp); end; end;
    2 likes
  14. Пользуйтесь Try - Except try THttpClient.Create.Get(URL); HasConnection := true; except HasConnection := false; end; Ну и вместо компонента TNetHTTPClient я обычно пользуюсь классом THTTPClient в отдельном потоке
    2 likes
  15. procedure GoToWithInputBox; begin TDialogServiceAsync.InputQuery('Введите номер страницы', ['№ страницы:'], [''], procedure(const AResult: TModalResult; const AValues: array of string) begin case AResult of mrOk: begin if AValues[0] <> '' then begin // делаем что надо с полученным значением по кнопке ОК, введенное значение в AValues[0] end; end; mrCancel: begin Exit; // тут выполняем действия по кнопке Отмена end; end; end ); end;
    2 likes
  16. как оказалось не все знали что установка _TCHAR mapping to wchar_t" должна заменять L. Таки подстановка L решила проблему. вот и верь им после этого.
    2 likes
  17. Как увеличить количество последних сообщений? Это панель на форуме справа. Фактически это текущий, основной форум, это жизнь форума. 20 тем это мало, бывает пару дней не появишься, и пропустишь интересные темы уже навсегда. Хотя бы 30 надо.. Это еще людей на форуме мало, будет в раза 2-3 больше, - состав последних сообщений будет очень быстро меняться, в результате вероятность что вопрос останется без ответа увеличиться... Еще вопрос как найти свои темы? Зашел в настройки, там не нашел ни того ни другого.. Спасибо.
    2 likes
  18. нету на андроиде Ansi, на Билдере вроде ставится L case 0: return L"Ожидание"; могу ошибаться конечно
    2 likes
  19. По поводу удаления из Gallery. Это виртуальная папка, это значит что недостаточно удалить файл из SharedCameraPath - т.к. он может быть в другом месте, т.к. MediaScanner собирает фотки со многих других папок, но обычно достаточно этого пути. Но, даже если его удалить оттуда, он все равно останется в Gallery - его нужно удалять из SQL базы андроида. В общем идея следующая (описана тут) - до вызова интента сначала прочитать последний Image ID (ContentResolver.Query ) который лежит там, сохранить эту цифру. Затем после вызова интента камеры, запросить все id что больше сохраненного, как правило там должен появится один файл (одна запись с ID больше сохраненного) - и удалить его через ContentResolver.Delete. Параллельно можно сразу скопировать этот готовый jpeg файл, до удаления, чтобы не тратить время на создание своего из битмапа, т.к. можно получит и путь к нему.
    1 like
  20. Я решил промежуточную обработку команд на php писать для работы с базой(почитал форум... решил что так лучше будет, чем прямой коннект из приложения). Так что ни каких тунелей)
    1 like
  21. {$IFDEF ANDROID} procedure KeepScreenOn(aEnable: boolean); var vFlags: integer; begin vFlags := TJWindowManager_LayoutParams.JavaClass.FLAG_KEEP_SCREEN_ON; if aEnable then begin CallInUIThread ( // uses FMX.Helpers.Android procedure begin TAndroidHelper.Activity.getWindow.setFlags (vFlags, vFlags); end ); end else CallInUIThread ( procedure begin TAndroidHelper.Activity.getWindow.clearFlags (vFlags); end ); end; {$ENDIF} Это для Berlin и ниже. При использовании Tokyo - вызов CallInUIThread не нужен, можно вызывать напрямую, т.к. теперь главный Delphi поток это Java UIThread. iOS uses iOSapi.UIKit; {$R *.fmx} procedure TForm6.Button1Click(Sender: TObject); var UIApp : UIApplication; begin UIApp := TUIApplication.Wrap(TUIApplication.OCClass.sharedApplication); UIApp.setIdleTimerDisabled(True); end;
    1 like
  22. DeviceInfo - модуль для получения информации о девайсе Android || Windows || IOS || MAC OS Intel планшет для Андроида нужно включить разрешения (permission) Ссылка на GitHub
    1 like
  23. "The release of RAD Studio 10.2 not only takes a big step forward with Linux support, but it also leaps forward with a more scalable RAD Server, deeper Windows support and the quality developers expect. We are also continuing to provide industry leading support for Windows 10 and the Windows 10 Store through our VCL framework.” -Nick Hodges, head of product management at Embarcadero. Excerpt from our recent RAD Studio 10.2 Press Release RAD Studio 10.2 – Now Available RAD Studio 10.2 includes the first RAD Studio Linux compiler, improved IDE menus for faster navigation, a host of FireMonkey updates and new features, new TDataSet capabilities, multi-tenancy support in RAD Server, updates to FireDAC, a number of RTL enhancements, greatly improved... Read More! Download RAD Studio 10.2 Now The fastest way to develop cross-platform Native Apps with flexible Cloud services and broad IoT connectivity. BUY RAD Studio 10.2 Start a FREE Trial of RAD Studio 10.2 Today Download Free Trial RAD Studio 10.2 Fast Development Rules - Use Delphi and FMX as secret weapons. By Atanas Popov Read the follow-up to Atanas Popov article on the importance of fast development as he talks with Eli M. of Peacekeeper Enterprise about how they use Delphi and FMX as their secret weapon. Read More! Jim McKeeth, Embarcadero Chief Evangelist, meet Embarcadero Japanese MVP. Meet HOSOKAWA Jun, our MVP from Japan. He is involved in mobile, game, artificial intelligence, virtual reality, and mixed reality development. Read the full interview with him and Jim McKeeth. Read More! Launch Webinar for RAD Studio 10.2 Tokyo Join Embarcadero Product Management Team to learn about the new release of RAD Studio 10.2, including the first LLVM based Linux compiler for Enterprise development, updates to FireDAC, FireMonkey, the RTL, C++Builder compilers, multi-tenancy support for RAD Server and more… RAD Studio™ is the fastest way to write, compile, package and develop ... Register Now! Overview of the RAD Studio 10.2 release • The first RAD Studio LLVM based Linux compiler for Enterprise development • Improved IDE menus for faster navigation • A host of FireMonkey updates and new features • Multi-tenancy support in RAD Server • And much more. Read More! What's New in C++Builder 10.2: Part 2 - Code Generation RAD Studio 10.2 Tokyo is released, and we would like to let you know some of what you can expect to see new on the C++Builder side. While the majority of work is for Linux, which will be available for C++ in 10.2.1, we've worked on three key areas: • Improved linking • Improved code generation • Improved debugging Read More! InterBase 2017 – Now Available - Embed, Deploy Relax InterBase 2017 delivers the fastest version of InterBase yet with new language features, server wide performance monitoring and enhanced transaction handling. Read More! The trial and developer editions of InterBase 2017 are available for free Download the Trial Version Save over 54% and Get the Best Tools in 2017 • Architect at a 15% discount + FREE RAD Server site license + 15 months initial maintenance subscription • Enterprise at a 10% discount + FREE RAD Server 10-device license + 14 months initial maintenance • RAD Studio Architect Suite : Save over 54% with this InterBase Server, RAD Server and RAD Studio bundle • RAD Studio - Enterprise Suite: Save over 47% with this InterBase Server, RAD Server and RAD Studio bundle • Free RAD Bonus Pack for all on Update Subscription Get 10.2 Tokyo Today! Offers end 31 March 2017! More Developer Resources • Configure Delphi and Red Hat or Ubuntu for Linux Development • The Sarina DuPont Self Driving Car Episode • Delphi Blogs of the Week/Month #51 • RAD STUDIO 10.2 – Available Today With Linux for Delphi • What's New in C++Builder 10.2: Part 3 - Debugging • Delphi 10.2 has been Released Today Просмотр полной статьи
    1 like
  24. OnResize . Но проверяйте что уже установили нужные размеры контролов\картинок, т.к. OnResize может выполняться многократно (если у первого компонента уже стоит нужная ширина then exit).
    1 like
  25. надо было сразу говорить, что под отладчиком Call Stack, +1
    1 like
  26. Наоборот, профи советуют ставить рекомендуемые, протестированные версии SDK, те что идут по умолчанию с пакетом. Note: You need to use the recommended versions of the Android development tools. RAD Studio might not support changes that alternative versions introduce. http://docwiki.embarcadero.com/RADStudio/Seattle/en/Installing_the_Android_Development_Tools Хотите случайных багов, - все в ваших руках. Можно и без устройства, на симуляторе. Все руководства уже расписаны: http://docwiki.embarcadero.com/RADStudio/Berlin/en/Mobile_Tutorial:_Set_Up_Your_Development_Environment_on_the_Mac_(iOS)
    1 like
  27. это бот постит, от имени Ярослава. Все обсуждения были по этой новости вчера в чате
    1 like
  28. 1. Обновите Xcode до последней версии. 2. PAserver - c аргументом v (verbose) 3. У Embarcaderos iOS есть демка "Location". Там указаны Version Info, попробуйте сначала ее запустить, и если все ок, то вставить в свой проект Project --> Project Options --> Version Info то что у этой демки.
    1 like
  29. Здравствуйте! Почему у компонента TCombobox нет свойства TextSettings в инспекторе объектов? Зачем оно скрыто?
    1 like
  30. У TBitmap есть метод BoundsF, достаточно посмотреть его реализацию property BoundsF: TRectF read GetBoundsF; ... function TBitmap.GetBoundsF: TRectF; begin Result := TRectF.Create(0, 0, Width, Height); end;
    1 like
  31. Привет. Я сделал установку на CorssOver ( WineHQ ).
    1 like
  32. ну если вам для андроида, то есть один вариант ANDROID_ID // uses Androidapi.Helpers, Androidapi.JNI.Provider; // permission read_phone_state ShowMessage(JStringToString(TJSettings_Secure.JavaClass.getString(TAndroidHelper.ContentResolver, TJSettings_Secure.JavaClass.ANDROID_ID)));
    1 like
  33. В моей статье есть решение: https://habrahabr.ru/post/317814/
    1 like
  34. Tools/Options/SDK Manager и удалите фрэймворк UIFoundation из всех конфигов iPhoneOS. Apple удалили этот фреймворк начиная с iOS 9.3, а Platform Assistant не может получить ассоциированные файлы. источник
    1 like
  35. К сожалению тут не многие пишут на с++ для IOS. Трудно гадать, в чем у Вас проблема. Варианты могут быть разные... (Как вариант: русская буква 'х' в названии файла). Приложите демонстрационный проект. Форма + TImage и загрузка задеплоенной картинки в TImage в runtime.
    1 like
  36. Есть такое дело. Он (Боян Митов) один автор сего продукта. Делает его ооооочень давно. В последнее время ударился в создание компонент и библиотек для работы с Arduino (почитать все новости можно в блоге). Недавно объявил о том, что скоро появится версия VideoLab для FMX с поддержкой не только Windows, но и MacOS и Android.
    1 like
  37. Так всегда и надо делать, тогда Tab / Shift+Tab работает корректно
    1 like
  38. А еще рекомендую ознакомиться с этой справкой: Standard RTL Path Functions across the Supported Target Platforms
    1 like
  39. я не вдавался в прямо подробности, но http://s408599889.onlinehome.us/forumdisplay.php?fid=18 это ветка форума VideoLab / Firemonkey components
    1 like
  40. Называется VideoLab (библиотека для работы с видео) Проблем с ним несколько. Во-первых - это только под Windows (уточним, насколько я знаю, сейчас Митов занимается созданием кроссплатформенной версии библиотеки, и вроде у него уже есть "наброски" (разумеется - под FMX), но когда появится релиз - не знаю). Во-вторых - непосредственно сама эта либа работать с RTMP не может. Так-что прийдется использовать фильтры, которые еще найти надо будет, если они есть )))
    1 like
  41. ему необходимо для IOS это не настраивается, т.к. выбора куда ложить свои файлы нету. система не разрешит положить в "левую" папку
    1 like
  42. ClientHeight - высота клиентской области, без строки заголовка, бордюров и тд.
    1 like
  43. Есть какие то результаты? Тоже интересует эта тема.
    1 like
  44. Добрый! Есть. Можно использовать сторонние библиотеки и модули, но цена у них приличная, а можно самому сделать. Вот на счет "самому" - будет непросто))) Очень непросто)
    1 like
  45. Название: Слесарное дело Платформа: Android, Windows Устройство: ПК, смартфон, планшет Разрешение экрана: любое Ссылки на скачивание: Windows - https://yadi.sk/d/iIeC0OE8ukMoi ; Android - https://yadi.sk/d/edIZR2VuuRFce (в скором времени планируется размещение в Play Market) Описание: Приложение представляет собой электронный конспект по слесарному делу, с помощью которого можно самостоятельно подготовится к занятиям. В него включены 16 тем, поделённые на блоки. Для каждой темы разработаны тесты для самоконтроля. В приложении имеется глоссарий для быстрого поиска по основным понятиям, а также возможность экспорта материалов в текстовый PDF-формат для дальнейшей печати.
    1 like
  46. Чтобы сделать аналог TLayout в VCL, достаточно унаследоваться от TWinControl Я так понимаю, вам нужен прозрачный компонент с возможностью держать в себе компоненты? Update: добавил компонент TLayout Win32.zip
    1 like
  47. 1 like
  48. это нормальное поведение, просто это разрешение включено по дефалту, поэтому я нигде не указываю о его нужде. Уже не первый раз такой вопрос, видимо нужно указывать
    1 like
  49. Попробуй движок Shadow Engine для Firemonkey, FPS впечатляет. https://www.youtube.com/watch?v=w6lGasU61HQ Gihub: https://github.com/dimsa/ShadowEngine
    1 like
  50. так сделано в одной из моих программ, автоматическое считывание кода подтверждения оплаты, подредактируй только его и не забудь про разрешения
    1 like
This leaderboard is set to Москва/GMT+03:00