-
Постов
160 -
Зарегистрирован
-
Посещение
-
Победитель дней
15
Сообщения, опубликованные ruslan
-
-
-
у меня все так и осталось.
стоит win7 x64. Delphi xe6
завтра поставлю xe7 . проверю
п.с. моргание однократное . такое ощущение что форма стилизуется только на OnShow
-
День добрый. Прошу помощи.
в .dpr файле загружаю стиль из ресурсов таким вот образом:
var Style: TFMXObject; S_Name: string; begin Style := nil; {$IFDEF MSWINDOWS} S_name:= 'skin_Jet'; {$ENDIF} if S_Name <> '' then Style := TStyleManager.LoadFromResource(HInstance, S_Name, RT_RCDATA); if Style <> nil then TStyleManager.SetStyle(Style); Application.Initialize; Application.CreateForm(TDM, DM); // Application.CreateForm(TfMain, fMain); Application.Run; end.
затем при создании датамодуля создаю форму авторизации и вешаю на нее фрейм:
procedure TDM.DataModuleCreate(Sender: TObject); var f_LoginForm: TForm; // пустая форма авторизации для фрейма begin Init_Settings; // загрузка настроек Set_REST_Params; // установка параметров REST-компонентов Settings.Load_U_Props; // читаем параметры юзера fr_Login:= Tfr_Login.Create(Application); // фрейм с контролами авторизации f_LoginForm := TForm.CreateNew(Self); // создаем форму авторизации f_LoginForm.Border.Styling := true; // стилизуем бордюры f_LoginForm.Width := Round(fr_Login.Width ) + 30; // подстраиваем размеры формы под фрейм f_LoginForm.Height := Round(fr_Login.Height) + 30; f_LoginForm.Position := TFormPosition.ScreenCenter; // по центру экрана f_LoginForm.FormStyle := TFormStyle.StayOnTop; // поверх окон f_LoginForm.BorderStyle:= TFmxFormBorderStyle.Single; fr_Login.Parent := f_LoginForm; // фрейм - на форму fr_Login.Align := TAlignLayout.Client; fr_Login.Visible:= true; fr_Login.ed_Username.Text := Settings.USER_Props.U_Name; // пользователь fr_Login.ed_Password.Text := Settings.USER_Props.U_Pass; // пароль fr_Login.cb_Save.IsChecked:= Boolean(Settings.USER_Props.U_DoSave); // признак сохранения try fr_Login.ed_Username.SetFocus; // фокус на "Пользователь" Logon_Info.isError:= true; f_LoginForm.ShowModal; // !!!!!!!! finally if f_LoginForm.ModalResult = mrOk then // если залогинился begin f_LoginForm.Free; fMain:= TfMain.Create(Application); // главная форма fMain.Show; end else Application.Terminate; // закрываемся end; end;
и вот. на
f_LoginForm.ShowModal;
форма показывается и есть мерцание. т.е. она не сразу стилизована. сначала виден дефолтный стиль(буквально пол секунды) а потом тот который я подключил перед Application.Initialize
мот я что-то делаю не правильно ? подскажите, а то мерцание глаз мозолит.
Спасибо
p.s. использую Delphi XE6. без Upd1
вот прикрепляю. в .dpr файле подгружаю стиль из ресурсов. при показе формы - моргание
FGX. Индикация хода выполнения длительных операций, виртуальная клавиатура и ActionSheet
в FGX
Опубликовано
когда будет под XE7 ?