2013-04-15 3 views
0

Я использую класс GXT Info для отображения сообщений и уведомлений. Я пытаюсь изменить стиль своего класса Info, используя это:Как установить стиль Info.display GXT?

NotificationInfo info = new NotificationInfo(); // extends Info class 
// Configuration 
InfoConfig config = new DefaultInfoConfig(title, message); 
config.setDisplay(milliseconds); 
// Formatting 
info.setStyleName("background-color:#f9ff4f;text-align:center;" + "border:0x solid black; padding: 3px; font-size:11px;font-weight: bold;"); 
info.show(config); 

Но это не работает! Любые указатели? Спасибо.

+0

styleName должен указывать на стиль в вашем файле CSS? – SSR

+0

Также вы используете версию GXT. – SSR

+0

Я использую последнюю версию GXT внутри приложения GWT. – amrfaissal

ответ

1

Это должно работать ... (для GXT3 это делает в любом случае)

info.getElement().applyStyles("background-color:#f9ff4f;text-align:center;" + "border:0x solid black; padding: 3px; font-size:11px;font-weight: bold;"); 

Кстати, если вам нужно сделать подобную вещь для виджета GWT (которые вы используете в вашем GXT приложение) вы можете сделать ...

info.getElement().<XElement> cast().applyStyles("background-color:#f9ff4f;text-align:center;" + "border:0x solid black; padding: 3px; font-size:11px;font-weight: bold;"); 

ПРИМЕЧАНИЕ: Я не уверен, о достоинствах установки его рядный, как это, но установка стиля CSS просто выходит из строя (ок стиль устанавливается на элемент, но фактическое место, где вы хотите для изменения будет отображаться в div в td в таблице вниз по строке, а div переопределяет ваше значение, наследуемое от css, которое вы используете и др). Лучшая практика - это, безусловно, пойти по всему пути появления для виджетов GXT3, но это большая работа для небольшого изменения, и поэтому я иногда использую это выше.

+0

Да, я использую его в приложении GWT. Я использую getElement(), и он работает, но любопытно уродливо !! Я вижу форматирование родителя в фоновом режиме (черный фон и белый текст). Ну, я попробую applyStyles;) – amrfaissal

1

Применение стилей является лишь быстрым решением, а не лучшим, потому что GWT CssResource имеет несколько преимуществ, чем прямой CSS, применяемый как минимизация, валидация. Как упоминалось в другом ответе, лучший подход - создать внешний вид для включения ваших стилей и заменить внешний вид NotificationInfo на ваш. Я уже ответил на аналогичный вопрос. Подумайте, это поможет. https://stackoverflow.com/a/15222404/1293087

+0

Спасибо. я попробую ;) – amrfaissal