- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在 panel1
中添加动态 JTextField
和 JLabel
但我无法设置 JTextField
的布局> 和 JLabel
。我需要将 JTextfield
和 JLabel
添加到 panel1
并将 panel1
添加到 panel
.我需要以自上而下的方式添加 JTextField
和 JLabel
并设置布局。 panel1
和 panel
是 JPanel 的实例。
我的代码:
public class MakeScrollablePanel extends JFrame implements ActionListener
{
static JButton jButton11,jButton12;
static JPanel panel,panel1;
static JTextField jTextFields;
static JLabel label;
static JComboBox<String> jComboBox;
static Dimension dime,dime1,dime2,dime3,dime4,dime5;
static JScrollPane scroll;
private GridBagConstraints panelConstraints = new GridBagConstraints();
BoxLayout bx=null;// @jve:decl-index=0:
int count=1,i=0;
public MakeScrollablePanel()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Show();
add(jButton11);
add(scroll);
dime=new Dimension(600,550);
setSize(dime);
setTitle("Priyank Panel");
setLayout(new FlowLayout());
setLocationRelativeTo(null);
setVisible(true);
setResizable(true);
}
private void Show()
{
jButton11=new JButton("Add Designation");
panel=new JPanel();
bx=new BoxLayout(panel,BoxLayout.Y_AXIS);
scroll=new JScrollPane(panel);
dime1=new Dimension(500,3000);
dime5=new Dimension(500,450);
panelConstraints = new GridBagConstraints();
scroll.setPreferredSize(dime5);
scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
panel.setLayout(bx);
panel.add(Box.createHorizontalBox());
panel.setBorder(LineBorder.createBlackLineBorder());
panel.setBackground(new Color(204, 230 , 255));
jButton11.addActionListener(this);
}
public void actionPerformed(ActionEvent event)
{
if(event.getSource()==jButton11)
{
label=new JLabel("Add Designation "+count +" :-");
jTextFields=new JTextField(30);
panel1=new JPanel();
panel1.setBackground(new Color(204, 230 , 255));
panel1.add(label);
panel1.add(jTextFields);
panel.add(panel1);
panel1.revalidate();
panel.revalidate();
panel.updateUI();
count++;
i++;
}
}
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new MakeScrollablePanel();
}
});
}
}
最佳答案
还是不行
我仍然看不出有任何问题(尽管使用了 BoxLayout 而不是 GridLayout,但在使用许多 JTextFields 的情况下结果可能非常相似)
.
.
来自(一点点)修改过的 OP 代码
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.SwingUtilities;
import javax.swing.border.LineBorder;
public class MakeScrollablePanel extends JFrame implements ActionListener {
private JButton jButton11, jButton12;
private JPanel panel, panel1;
private JTextField jTextFields;
private JLabel label;
private JComboBox<String> jComboBox;
private Dimension dime, dime1, dime2, dime3, dime4, dime5;
private JScrollPane scroll;
private GridBagConstraints panelConstraints = new GridBagConstraints();
private BoxLayout bx = null;// @jve:decl-index=0:
private int count = 1, i = 0;
public MakeScrollablePanel() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Show();
add(jButton11, BorderLayout.NORTH);
add(scroll);
setTitle("Priyank Panel");
pack();
setVisible(true);
setLocationRelativeTo(null);
setResizable(true);
}
private void Show() {
jButton11 = new JButton("Add Designation");
panel = new JPanel();
bx = new BoxLayout(panel, BoxLayout.Y_AXIS);
scroll = new JScrollPane(panel);
dime5 = new Dimension(500, 150);
panelConstraints = new GridBagConstraints();
scroll.setPreferredSize(dime5);
scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
panel.setLayout(bx);
panel.add(Box.createHorizontalBox());
panel.setBorder(LineBorder.createBlackLineBorder());
panel.setBackground(new Color(204, 230, 255));
jButton11.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvent event) {
if (event.getSource() == jButton11) {
label = new JLabel("Add Designation " + count + " :-");
jTextFields = new JTextField(30);
panel1 = new JPanel();
panel1.setBackground(new Color(204, 230, 255));
panel1.add(label);
panel1.add(jTextFields);
panel.add(panel1);
panel.revalidate();
panel.repaint();
count++;
i++;
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new MakeScrollablePanel();
}
});
}
}
关于java - 动态添加textField时的setlayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22681898/
运行实例化此类的代码时: static final class MyFrame extends JFrame { private CardLayout layout = new CardLay
我最近开始与Qt和Qwt合作。我一个人找不到我的错误。请帮我。有代码。 我知道我在这里某处的错误: .h文件 ... class MainWindow : public QMainWind
我无法在 EditorPane 上添加滚动条。 private JEditorPane editorPane; private JScrollPane scrollpane; 容器: Containe
我正在尝试编译这个非常简单的 BoxLayout 管理器测试,但我不断收到此错误:“Container 类型中的方法 setLayout(LayoutManager) 不适用于我的行面板上的参数 (L
我有代码 import javax.swing.JFrame; import javax.swing.JPanel; import java.awt.Graphics; import java.awt
我在代码中执行以下调用: ... setLayout(null); ... 我试图通过指定按钮和文本字段的 x 和 y 坐标来放置按钮和文本字段。 运行程序(使用 Eclipse 或 BlueJ)时的
我正在尝试构建一个小型垄断游戏。在这里您可以看到我遇到问题的代码部分。 public class Board extends JPanel { private ImageIcon image;
大多数布局管理器都有无参数构造函数(也就是说,您可以使用 new FlowLayout() 创建 FlowLayout,使用 new GridLayout() 创建 GridLayout,使用 Gri
public void frame_pizza() { pizzaMenu.setVisible(true); //makes Jframe pizzaMenu visible
我尝试将 JFrame 的背景颜色设置为红色,同时将 JPanel 保留白色。但它不能与 setLayout 一起工作 private void buildGraphics(){ JF
import javax.swing.*; import java.awt.*; class MenuPanel extends JPanel { JButton setTextColor;
执行时(没有编译错误)我进入控制台 QWidget::setLayout: Attempting to set QLayout "" on CGSearchResult "", which alrea
我正在尝试通过函数 setLayout 设置小部件的布局,但我收到错误消息: main.obj:-1: error: LNK2019: unresolved external symbol "publ
我将 JLabel 和我自己的 Panels 类添加到 JFrame 中。顺便说一下,我创建的 Panels 类继承自 JPanel。 我的代码仅显示两个组件之一:JLabel 或JPanel 继承类
有人知道为什么组合框没有显示吗?我有一个 Controller : public class TestController extends JPanel { TestView cgView; publ
我创建了一个 JPanel 并向其中添加了一个 JTabbedPane。然后我向该选项卡 Pane 添加了另外两个面板,并将所有面板的布局设置为 null。但框架不显示任何内容,如果我将主面板的布局从
我注意到当在 UICollectionView 中调用 setLayout:animated 以在两个布局之间切换时,当前可见的单元格不符合 zIndex 它的布局属性已在 layoutAttribu
本文整理了Java中com.tc.admin.common.XContainer.setLayout()方法的一些代码示例,展示了XContainer.setLayout()的具体用法。这些代码示例主
运行聊天应用程序时,我不断收到此错误: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.l
我想学习如何在没有设计器的情况下手工创建图形用户界面。我试图向我的 MainWindow 添加布局,但在运行时显示 QWidget::setLayout: Attempting to set QLay
我是一名优秀的程序员,十分优秀!