これが私のLayoutクラスのコードです。
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class Layout extends JFrame {
private JButton lb;
private JButton cb;
private JButton pb;
private FlowLayout layout;
private Container container;
public Layout() {
super("The Title");
layout = new FlowLayout();
container = new Container();
setLayout(layout);
//*Left
lb = new JButton("L");
add(lb);
lb.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
layout.setAlignment(FlowLayout.LEFT);
layout.layoutContainer(container);
}
}
);
//*Center
cb = new JButton("C");
add(cb);
cb.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
layout.setAlignment(FlowLayout.CENTER);
layout.layoutContainer(container);
}
}
);
//*Right
pb = new JButton("R");
add(pb);
pb.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
layout.setAlignment(FlowLayout.RIGHT);
layout.layoutContainer(container);
}
}
);
}
}
私はnewbostonyoutubeチュートリアルを通してJavaを学んでいます(このコードはこのチュートリアルからのものです)。しかし、これは本来のようには機能しません。右ボタン(R)をクリックすると、すべてのボタンがウィンドウの右側に瞬時にドラッグされます。そうではありません。ただし、その右ボタンをクリックしてからウィンドウのサイズを強制的に変更すると、本来の機能が実行されます。mainメソッドにsetResizable(false)を追加すると、プログラムのサイズを変更できないため、プログラムが機能しなくなります。私は何を間違えましたか?
私の貧しい英語のところで私を許してください。