x11 Опубликовано 15 февраля, 2018 Поделиться Опубликовано 15 февраля, 2018 Код применения стиля: procedure TfmOptions.ChangeStyles; var aTos: String; aStyle: TFMXObject; const ToStr: Array[TOSVersion.TPlatform] of string = ('Windows', 'MacOS', 'iOS', 'Android', 'WinRT', 'Linux'); begin aStyle := nil; lbActiveStyle.Text := 'применение стиля...'; Application.ProcessMessages; //если выбираем из ресурсов if comboStyles.ItemIndex > 0 then begin aTos := ToStr[TOSVersion.Platform] + comboStyles.Selected.Text; aStyle := TStyleStreaming.LoadFromResource(HInstance, aTos, RT_RCDATA); aStyle.StyleName := comboStyles.Selected.Text; if not assigned(aStyle) then begin ShowMessage('Стиль не найден: ' + aTos); lbActiveStyle.Text := 'Стиль не найден: ' + aTos; exit; end; end;// if comboStyles.ItemIndex > 0 then TStyleManager.SetStyle(aStyle); lbActiveStyle.Text := 'Готово. ' + TStyleManager.ActiveStyle(self).StyleName; end; получаю ошибку: Цитата Project raised exception class EClassNotFound with message 'Class TPopupBox not found' на строке aStyle := TStyleStreaming.LoadFromResource(HInstance, aTos, RT_RCDATA); Исключение вываливается 2 раза. И только на Андроиде. На Windows такой ошибки не и стили загружаются нормально. На Андроиде хоть и ошибка, но стили применяются. Стили хранятся в ресурсах, как вы поняли. Раньше такой ошибки не было. Цитата Ссылка на комментарий
0 x11 Опубликовано 15 февраля, 2018 Автор Поделиться Опубликовано 15 февраля, 2018 В файлах стилей действительно 2 раза встречается. Цитата Ссылка на комментарий
Вопрос
x11
Код применения стиля:
procedure TfmOptions.ChangeStyles; var aTos: String; aStyle: TFMXObject; const ToStr: Array[TOSVersion.TPlatform] of string = ('Windows', 'MacOS', 'iOS', 'Android', 'WinRT', 'Linux'); begin aStyle := nil; lbActiveStyle.Text := 'применение стиля...'; Application.ProcessMessages; //если выбираем из ресурсов if comboStyles.ItemIndex > 0 then begin aTos := ToStr[TOSVersion.Platform] + comboStyles.Selected.Text; aStyle := TStyleStreaming.LoadFromResource(HInstance, aTos, RT_RCDATA); aStyle.StyleName := comboStyles.Selected.Text; if not assigned(aStyle) then begin ShowMessage('Стиль не найден: ' + aTos); lbActiveStyle.Text := 'Стиль не найден: ' + aTos; exit; end; end;// if comboStyles.ItemIndex > 0 then TStyleManager.SetStyle(aStyle); lbActiveStyle.Text := 'Готово. ' + TStyleManager.ActiveStyle(self).StyleName; end;
получаю ошибку:
на строке
aStyle := TStyleStreaming.LoadFromResource(HInstance, aTos, RT_RCDATA);
Исключение вываливается 2 раза. И только на Андроиде. На Windows такой ошибки не и стили загружаются нормально.
На Андроиде хоть и ошибка, но стили применяются.
Стили хранятся в ресурсах, как вы поняли.
Раньше такой ошибки не было.
Ссылка на комментарий
1 ответ на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.