., Hello, I have a problem with GroupLayout . My code is:
public chat () {
JTextField chatbox;
JTextField msgbox;
JButton sendbutton;
GroupLayout layout;
super();
chatbox = new JTextField();
msgbox = new JTextField();
sendbutton = new JButton("Send");
layout = new GroupLayout(this);
sendbutton.setPreferredSize(new Dimension(60, 20));
setBackground(new Color(255, 255, 255));
setLayout(layout);
layout.setAutoCreateGaps(true);
layout.setAutoCreateContainerGaps(true);
layout.setHorizontalGroup(layout.createParallelGroup()
.addComponent(chatbox)
.addGroup(layout.createSequentialGroup()
.addComponent(msgbox)
.addComponent(sendbutton))
);
layout.linkSize(SwingConstants.HORIZONTAL, sendbutton);
layout.setVerticalGroup(layout.createSequentialGroup()
.addComponent(chatbox)
.addGroup(layout.createParallelGroup()
.addComponent(msgbox)
.addComponent(sendbutton))
);
}
And the problem is that components in Layout are as big as they can. I cant limit this size. The question is, how to set for example constant height for an item?
Or from the other hand, which function is called when window is resized? Maby can i override that function, getSize of parent Jpanel (its in Jpanel), and then set size based on percentage? What do you think?
Thank you in advance, Marcin
// problem solved.
in fifth line from bottom change
.addGroup(layout.createParallelGroup()
for
.addGroup(layout.createParallelGroup(BASELINE)
thank you all for help.
setMaximumSize() in your component objects.
ReplyDelete