Ллирик
Пользователи-
Постов
50 -
Зарегистрирован
-
Посещение
Весь контент Ллирик
-
Мне бы хотелось в VCL использовать компонент TLayout. Как его подключить через install component? Я никогда раньше не подключал компоненты, поэтому хотелось бы подробную инструкцию)
-
Спасибо. Наоборот надо отключить все libnative-activity.co, но я вроде уже отключал...
-
При сборке Application Store эмулятор Nox выдаёт , а при сборке Development приложение работает нормально. Так и должно быть или......?
-
Подскажите, пожалуйста, как сделать эффект нажатия кнопки? Пробовал поиграться с TFloatAnimation.Property.Scale, но уменьшение масштаба идёт не к центру, а к левому верхнему углу и никакие выравнивания по центру не помогают. То есть какую анимацию из TAnimatiom надо применить к Buttonstyle в StyleBook, чтобы получить эффект уменьшения изображения к центру? Сделал 4 анимации TFloatAnimation. Две на Padding и по одной на ширину и высоту, но анимация почему-то срабатывает с задержкой, хотя delay и duration поставлены на 0
-
Так Generics.Collections у меня тоже подключен, только всё-равно выдаёт
-
Если Вы имеете ввиду Generics.Collections, то там в rad studio 10 seattle почему-то нет TObjectList
-
Работаю с TObjectList. Для винды компилируется без проблем, а для андроида выдаёт Почему?
-
Проблему решил создав диалог не на классе TForm, а на классе TPanel.
-
Да, действительно код не останавливается. Но четыре месяца назад я писал приложение в билдере, в котором при вызове ShowMessage выполнение кода останавливалось и мой друг может это подтвердить) В общем чудеса какие-то.....) Так мне не нужно, чтобы форма сама закрывалась
-
И в чём же я был не прав, Сударыня?
-
Так это просто пример) В моем приложении таймер устанавливается на 30 секунд и срабатывает отдельно от других диалогов, если пользователь не успел правильно ответить на вопрос
-
Если в Вашем примере добавить вызов TMyMsgDlg.Create по таймеру, например так procedure TFormMain.Button3Click(Sender: TObject); var mY: TMyMsgDlg; begin mY := TMyMsgDlg.Create('Вывести сообщение по закрытию окна?', self, procedure begin ShowMessage('Сообщение по закрытию окна'); end, false); mY.ShowMe; timerr := 10; Timer1.Enabled := true; end; procedure TFormMain.Timer1Timer(Sender: TObject); var mY: TMyMsgDlg; begin Timerr := Timerr -1; if Timerr = 0 then begin Timer1.Enabled := false; mY := TMyMsgDlg.Create('Таймер сработал!!!! Вывести сообщение по закрытию окна?', self, procedure begin ShowMessage('Сообщение по закрытию окна'); end, false); mY.ShowMe; end; end; , то на андроиде будет точно такой же глюк, как у меня, то есть если на экране сообщение 'Вывести сообщение по закрытию окна?', то сообщение 'Таймер сработал!!!! Вывести сообщение по закрытию окна?' на экране не появится
-
Глюк появляется, когда у модальной формы включён Transparency
-
Если тут была бы ошибка, то компилятор просто бы не скомпилировал программу) Так что тут никакой ошибки нет))
-
А как я тогда узнаю, что произошло нажатие кнопки ОК? В винде всё работает, проблема только на андроиде
-
Не понял, а я как тогда сделал? Чем Ваш код отличается от моего? И у меня главный вопрос всё таки второй. Он вообще никак не связан с первым
-
Вопрос 1. Как закрыть приложение из модального окна на андроиде? Делаю так: procedure ExitQwery(MainSelf: TForm); var FormExitQwery: TFormExitQwery; begin Application.CreateForm(TFormExitQwery, FormExitQwery); FormExitQwery.BringToFront; FormExitQwery.StyleBook := MainSelf.StyleBook; FormExitQwery.Label1.Width := 1; FormExitQwery.ShowModal( procedure(Result: TModalResult) begin if Result = mrOk then begin FormExitQwery.Free; MainSelf.Close; MainSelf.Free; Application.Terminate; end else if Result = mrCancel then begin FormExitQwery.CloseModal; FormExitQwery.Free; end; end); end; procedure TFormExitQwery.Close(Sender: TObject; var Action: TCloseAction); begin Action := TCloseAction.caFree; end; end. , но приложение не закрывается. Вопрос 2. По нажатию на TImage и по таймеру создаются два модальных окна procedure ShowMessageModal(Self: TForm; const AMessage: string; ADefProc: TProc); var locMessageForm: TMessageForm; begin Application.CreateForm(TMessageForm, locMessageForm); locMessageForm.BringToFront; // locMessageForm.ModalResult := mrOk; locMessageForm.CurWidth := false; locMessageForm.SelfWidth := Self.Width; locMessageForm.StyleBook := Self.StyleBook; // locMessageForm.Parent := Self; locMessageForm.MessText.BeginUpdate; locMessageForm.MessText.Text := AMessage; locMessageForm.MessText.EndUpdate; locMessageForm.ButtonHeight := Round(locMessageForm.Buttton.Height); locMessageForm.ButtonWidth := Round(locMessageForm.Buttton.Width) + 24; locMessageForm.MessText.Width := 1; locMessageForm.Buttton.ModalResult := mrOk; locMessageForm.showModal( procedure(Result: TModalResult) begin if Result = mrOk then begin ADefProc(); locMessageForm.CloseModal; end; end); end; end. Если на экране смартфона уже есть окно от нажатия на TImage, то окно по таймеру уже не показывается. Как быть?
-
Пытаюсь создать модальное окно вот так: procedure ShowMessageModal(const AMessage: string); var ACloseDialogEvent: TInputCloseDialogEvent; DialogSvc: IFMXDialogService; begin DialogSvc.MessageDialog(Translate(AMessage), TMsgDlgType.mtCustom, [TMsgDlgBtn.mbOK], TMsgDlgBtn.mbOK, -1, -1, nil, nil, procedure(const AResult: TModalresult) begin if Assigned(ACloseDialogEvent) then ACloseDialogEvent(DialogSvc.MessageDialog, AResult); end); end; но выдаёт Пожалуйста, подскажите как решить проблему