1

GUI と GUI とボタンの実装に関する知識を増やしているところですが、ちょっとした問題が発生しました。私はこれを検索し、ボタンコードを比較しましたが、他のコードと比較して私が見ているものと何も変わらないようです. 任意のボタンに html を追加する場合、たとえば testOne を使用する場合は、次のようにします。

JButton testOne = new JButton("<html><b><u>T</u>est<br>1</b></html>");        

もちろん、ボタンはありますが、ボタンは非常に大きく、小さなフォントで、他のボタンは通常のサイズです。誰でも理由がわかりますか?宿題ではなく、ただの楽しい練習なので、宿題タグなしでコードを投稿しました。

public FunProject(){
    super("Fun Project"); //child
    //create layout and get the content pane for content
    contents = getContentPane();
    contents.setLayout(new FlowLayout(FlowLayout.CENTER));
    leftBox = getContentPane();
    leftBox.setLayout(new BoxLayout(leftBox, BoxLayout.X_AXIS));
    //menuBar = new 
    //Create the buttons to use
    JButton testOne = new JButton("Test 1");
    JButton testTwo = new JButton("Test 2");
    JButton testThree = new JButton("Test 3");

また、少し知識を広めたいと感じている人のために、ボタンを積み重ねるにはどうすればよいですか? 現在、それらは積み重ねられていない水平面にありますが、希望する位置にあります (中央左)。前もって感謝します。

import javax.swing.*;
import javax.swing.event.MenuEvent;
import javax.swing.event.MenuListener;

import java.awt.*;
import java.awt.event.*;

public class FunProject extends JFrame implements ActionListener, KeyListener,     MenuListener{
//Content only visible to me
    private Container contents;
    private Container leftBox;
    private JButton testOne, testTwo, testThree;
    private JMenuBar menuBar;
    private JMenu men, file, edit, exit;
    private JMenuItem fileOpen, fileSave, fileType;
    private JMenuItem editOpen, editSave, editType;


//Constructor
public FunProject(){
    super("Fun Project");
    //create layout and get the content pane for content
    contents = getContentPane();
    contents.setLayout(new FlowLayout(FlowLayout.CENTER));
    leftBox = getContentPane();
    leftBox.setLayout(new BoxLayout(leftBox, BoxLayout.X_AXIS));


    //Key Listener
    this.addKeyListener(this);

    //Creating Menu bar
    menuBar = new JMenuBar();

    //Adding header to menuBar
    men = new JMenu("Test Menu");
    men.addMenuListener(this);
    menuBar.add(men);

    //Adding exit to menuBar
    exit = new JMenu("Exit Menu");
    exit.setMnemonic(KeyEvent.VK_X);
    exit.addMenuListener(this);
    menuBar.add(exit);

    //Add submenu
    file = new JMenu("FILE");
    file.addMenuListener(this);
    men.add(file);

    edit = new JMenu("EDIT");
    edit.addMenuListener(this);
    men.add(edit);

    //Add item to submenu FILE
    fileOpen = new JMenuItem("Open a file");
    fileOpen.addActionListener(this);
    file.add(fileOpen);

    fileSave = new JMenuItem("Save a file");
    fileSave.addActionListener(this);
    file.add(fileSave);

    fileType = new JMenuItem("File type");
    fileType.addActionListener(this);
    file.add(fileType);

    //Add item to submenu EDIT
    editOpen = new JMenuItem("Open a file");
    editOpen.addActionListener(this);
    edit.add(editOpen);

    editSave = new JMenuItem("Save a file");
    editSave.addActionListener(this);
    edit.add(editSave);

    edit = new JMenuItem("File type");
    editType.addActionListener(this);
    edit.add(editType);

    //Add menu bar
    this.setJMenuBar(menuBar);

    //Create the buttons to use
    JButton testOne = new JButton("Test 1"); 
    JButton testTwo = new JButton("Test 2");
    JButton testThree = new JButton("Test 3");
    //Button modifications
    testOne.setPreferredSize(new Dimension(100, 100));
    //Add buttons and such to the leftBox (frame > pane)
    leftBox.add(testOne);
    leftBox.add(testTwo);
    leftBox.add(testThree);

    //Tell the program what Listener will handle events for the button or whatever you
    //are implementing
    testOne.addActionListener(this);
    testTwo.addActionListener(this);
    testThree.addActionListener(this);

    //Set size and visibility to display content and color
    setSize(400,300);
    setVisible(true);

}
public static void main(String[] args){
    FunProject fp = new FunProject();
    fp.setDefaultCloseOperation(EXIT_ON_CLOSE);
}

私はメニューをいじっていました(メニューコードは無視してください)、そしてそれらが何であるかについてです。それは後で私がそれをよりよく学ぶときのためです。

4

1 に答える 1