簡體   English   中英

gxt:自定義網格單元格樣式

[英]gxt: custom grid cell style

我想在網格中創建自定義單元格。 這不是問題。 問題:此自定義單元格中的文本樣式不正確。

myColumn.setRenderer(new GridCellRenderer<TaskModel>() {
        public Object render(TaskModel model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<TaskModel> taskModelListStore, Grid<TaskModel> taskModelGrid) {
            VerticalPanel panel = new VerticalPanel();

            Html html = new Html("xxxx");

            Button b = new Button("xxxxxxxx");

            panel.add(html);
            panel.add(b);

            return panel;
        }
    });

為什么會這樣?

樣式示例

您必須為自己設置樣式。

 Html html = new Html("<div class=\"myStyle\">xxxx</div>");

然后在stylesheet.css文件中(根據您的項目設置,其名稱可能有所不同)

.myStyle {
    //style you want
}

或內聯,如果您不想編輯樣式文件,例如:

 Html html = new Html("<div style=\"font-weight: bold;\">xxxx</div>");

但是我更喜歡在代碼之外存儲樣式的位置(如我的第一個建議)

如果您希望文本的樣式與其他GXT文本相同,請創建一個GXT文本對象,然后添加它。 如果需要自定義樣式,則需要使用@denu建議的自己的CSS。

我認為類似new Text("xxxx"); 可能就是您想要的。

@Travis有什么區別:

ColumnConfig column1 = new ColumnConfig("1", 200);
        column1.setRenderer(new GridCellRenderer<TaskModel>() {
            public Object render(TaskModel model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<TaskModel> taskModelListStore, Grid<TaskModel> taskModelGrid) {
                VerticalPanel panel1 = new VerticalPanel();

                panel1.add(new Html("html"));
                panel1.add(new Label("label"));
                panel1.add(new Text("text"));
                panel1.add(new Button("button"));
                return panel1;
            }
        });
        ColumnConfig column2 = new ColumnConfig("2", 200);
        column2.setRenderer(new GridCellRenderer<TaskModel>() {
            public Object render(TaskModel model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<TaskModel> taskModelListStore, Grid<TaskModel> taskModelGrid) {
                return new Text("text");
            }
        });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM