2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Глюки при отображении таблицы в JavaFX
Сообщение10.06.2011, 12:26 


13/05/11
4
Создаю таблицу, как матрицу SwingTextField. При откритии приложения ее нет. Если свернуть и развернуть, то все появляется. Но вводимий текст не отображается при вводе, снова нужно свернуть развернуть окно. Подкажите проблему пожалуйста.
Код класа
public var tab_man:TabManager;
public var head:String[];
public var rows:Integer;
public var cols:Integer;
public var edit=false;
public var access:Integer;
public var is_editing:Boolean=false;
override var hover=false;

public var y=2;
public var x=2;
public var cell_spacing = 5; //spaces beetwin cells
public var cnt_man:ContentManager;
public var width=700;
public var height=200;
override var focusTraversable = false;

public var scrollBar:ScrollBar;
public var row_lst:HBox[];
public var listView:VBox;

override var onKeyPressed = function(e)
{
if(e.code == KeyCode.VK_UP) {
scrollBar.adjustValue(-1);
} else if(e.code == KeyCode.VK_DOWN) {
scrollBar.adjustValue(1);
}
}
//здесь были гетеры и сетеры
//таблица - ето масив HBox-ов
override public function create():Node
{
tab_man=cnt_man.app.db.getManager();//ето не важно
tab_man.list_view=this;
tab_man.cont_manager=cnt_man;
tab_man.access=access;
rows=tab_man.getRows()+1; //все ето поредиляет
cols=tab_man.getCols();
head=tab_man.getHead(); //поведение и данние
var it:Node[];
var rc:String[];
var c_id:String;
//создаю заголовок
for(j in [0..cols-1])
{
it[j]=SwingTextField
{
columns: 10
text: head[j]
editable: false
visible: true
width: bind (width-cell_spacing*(cols-1))/cols
}
}
row_lst[0]=HBox
{
spacing: cell_spacing
content: it
}
//создаю остальное
for(i in [1..rows-1])
{
rc=tab_man.fillRow();
if(rc!=null) c_id=tab_man.getID();
if(rc==null)
{
rc=for(k in [0..<cols]) new String("");
}
it[cols-1]=tab_man.getLastColumn();
for(j in [0..cols-2])
{
it[j]=SwingTextField
{
columns: 10
text: rc[j];
editable: edit
disable: false;
visible: true
width: bind (width-cell_spacing*(cols-1))/cols
id: c_id
action: function(){println("hello people");}
};
}
row_lst[i]=HBox
{
spacing: cell_spacing
content: it
}
}
listView = VBox
{
spacing: cell_spacing
layoutX: x
layoutY: bind y-(scrollBar.value)
content: bind row_lst
};
scrollBar=ScrollBar
{
layoutX: bind (width-scrollBar.width+x)
layoutY: y
min: 0
max: bind Math.max((listView.boundsInLocal.height - height), 0)
vertical: true
height: bind height
blockIncrement: bind height
focusTraversable: false
blocksMouse: false
};

return Group {
content: [
Group {
content: bind listView
layoutX: x
layoutY: y
clip:Rectangle
{
y: y
x: x
width: bind width
height: bind height
}
},
scrollBar
]
}
}

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group