Перейти к содержанию
Fire Monkey от А до Я

Лидеры

  1. #WAMACO

    #WAMACO

    Пользователи


    • Баллы

      2

    • Постов

      776


  2. Brovin Yaroslav

    Brovin Yaroslav

    Администраторы


    • Баллы

      1

    • Постов

      2 124


  3. Andrey Efimov

    Andrey Efimov

    Модераторы


    • Баллы

      1

    • Постов

      842


  4. Кривяков Виталий

    Кривяков Виталий

    Пользователи


    • Баллы

      1

    • Постов

      79


Популярный контент

Показан контент с высокой репутацией 17.11.2015 во всех областях

  1. Вас вообще понять не могу! Все время критикуете RAD Studio и зачем тогда тут все время? я вот отошел от C#, перекрестился и больше не хочу туда!
    1 балл
  2. про Xamarin все аналогично! на 1с 8.3 даже пишут и удачно продают! хотя там тьма вообще! не соответствует всем канонам разработки мобильных приложений! анти-интерфейс, анти-все...... ничего, делают и торгуют!
    1 балл
  3. тоже не помогло. стоял SQL 2005 поставил SQL 2014. Такая же ошибка выдается. предлагает обновить клиента. Может кто чего подскажет..... может есть другие компоненты или технология подключения к серверу? некоторые ответы меня вводят в замешательство ибо что то я не слышал про версии MySQL 2005 и MySQL 2014
    1 балл
  4. Вроде прекрасно все отлавливает procedure TForm_Main.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState); begin if Key = vkHardwareBack then ShowMessage('Назад') else if Key = vkMenu then ShowMessage('Меню'); end; А вот "Открытые приложения" наврятли получиться отловить
    1 балл
  5. Кривяков Виталий

    TUITabControl

    Проверил - действительно, есть такое поведение. Постараюсь выложить исправление в ближайшее время.
    1 балл
  6. Версия 1.5 (Т.к. исходники предыдущей версии утеряны, было принято решение написать всё заново.) Приложение ориентированно на людей, которые понимают для чего оно предназначено. В противном случае, ошибки, типо неправильного шаблона для имени не избежать. Позже, может быть придумаю, как это всё учесть. Для использования, как минимум, необходимо подготовить файлы, которые планируется занести в файл ресурсов. Изменения в версии 1.5: Всё написано заново Добавлена возможность выбирать как определенную папку (с возможностью сканирования подпапок), так и отдельно несколько файлов. Добавлена возможность выбора места сохранения (с возможностью дозаписать новые файлы в старый RC файл) Возможные длительные операции вынесены в отдельные потоки Во время длительных операций осуществляется оповещение в виде AniIndicator'a Скачать с Google Drive p.s. Если вы обнаружили баг, то отпишитесь мне, пожалуйста.
    1 балл
  7. Вся отрисовка выполняется в главном потоке приложения. Поэтому, если вы пытаетесь выполнить скачивание файла в основном потоке, то вся отрисовка приостановится до момента окончания вашей операции. Поэтому правило хорошего тона - это вынесение долгих операций (загрузка, ответ авторизации и тд) в отдельный поток. Примерный код приведен ниже: 1. Создаем отдельный поток, в котором вы будите скачивать файл (я поставил для эмуляции скачивания просто паузу на 5 секунд): type TMyTask = class (TThread) protected FOnTaskStarted: TThreadMethod; FOnTaskFinished: TThreadMethod; procedure DoStarted; procedure DoFinished; procedure Execute; override; public property OnTaskStarted: TThreadMethod read FOnTaskStarted write FOnTaskStarted; property OnTaskFinished: TThreadMethod read FOnTaskFinished write FOnTaskFinished; end; Реализация: { TMyTask } procedure TMyTask.DoFinished; begin if Assigned(OnTaskFinished) then OnTaskFinished; end; procedure TMyTask.DoStarted; begin if Assigned(OnTaskStarted) then OnTaskStarted; end; procedure TMyTask.Execute; begin Synchronize(DoStarted); try Sleep(5000); // Эмуляция выполнения 5 Секундной задачи finally Synchronize(DoFinished); end; end; Само использование такого потока будет следующим (в моем примере после выполнения операции, появится сообщение): TForm3 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private FMyTask: TMyTask; public procedure DoTaskStarted; // Callback, вызываемый в начале старта операции procedure DoTaskFinished; // Callback, вызываемый в конце выполнения операции. Аналог OnTerminate procedure StartMyTask; // Запуск задачи end; procedure TForm3.Button1Click(Sender: TObject); begin StartMyTask; end; procedure TForm3.DoTaskStarted; begin end; procedure TForm3.DoTaskFinished; begin ShowMessage('Выполнение задачи окончено'); end; procedure TForm3.StartMyTask; begin if FMyTask <> nil then begin FMyTasl.OnTaskStarted := nil; FMyTasl.OnTaskFinished := nil; FMyTask.Free; end; FMyTask := TMyTask.Create(True); FMyTask.OnTaskStarted := DoTaskStarted; FMyTask.OnTaskFinished := DoTaskFinished; FMyTask.Start; end; При таком подходе главный поток не будет блокироваться и будет корректно отрисовываться и работать.
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...