2013-04-15 53 views
0

我正在使用GXT的Info類來顯示消息/通知。我試圖改變我的信息類的使用這種風格:如何設置GXT的Info.display樣式?

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

我在GWT應用內使用GXT的最新版本。 – 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樣式,只不過沒有(OK樣式設置元素上,但你想實際到位的優劣更改獲取呈現在表格中的表格中的div中的div,並且div覆蓋您從css繼承的值等)。最佳實踐當然是爲GXT3小部件提供完整的外觀路線,但這對於一個小小的改變來說是一個很大的工作,所以我有時會使用上面的方法。

+0

是的,我在一個GWT應用程序中使用它。我使用getElement(),它的工作原理,但有點醜陋!我可以在背景中看到父母的格式(黑色背景和白色文本)。那麼我會嘗試applyStyles;) – amrfaissal

1

應用樣式只是一個快速的解決方案,並不是最好的,因爲GWT CssResource比直接CSS應用像縮小,驗證幾乎沒有什麼優勢。正如在另一個答案中提到的,最好的方法是創建一個包含您的樣式的外觀,並用您的樣式替換NotificationInfo的外觀。我以前回答過類似的問題。認爲它會有所幫助。 https://stackoverflow.com/a/15222404/1293087

+0

謝謝。我會試試看 ;) – amrfaissal