如何使用Swing将这些JComponents与"内容"窗格中心的"表单"对齐...
panel1.add(l1);
panel1.add(c1);
panel1.add(l2);
panel1.add(c2);
panel1.add(b4);
panel1.add(b5);
frame1.getContentPane().add(panel1);
Run Code Online (Sandbox Code Playgroud)
请帮我
假设我有一个 Swing JComponent,并且我为该 JComponent 的文本设置了一个 Font。我构建项目并创建项目的 .jar 文件。现在,如果我从另一台未安装字体的计算机上运行这个 jar 文件,会发生什么?jar 会自动安装字体还是我需要进行某种检查才能做到这一点?谢谢。
我有一个JPanel添加的网格JLabels.我想要MouseListener听一听MouseEvents,但是当点击a所在的位置时,JLabels似乎是在路上而且没有MouseEvent火灾JLabel.
有没有一种方便的方式来听MouseEvents一个组件的孩子?
如何从 JFileChooser 中删除组件(文件类型);标签及其组合框?
我有以下代码:
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
fileChooser.setDialogTitle("Select Folder");
fileChooser.setApproveButtonText("Select Folder");
fileChooser.setAcceptAllFileFilterUsed(false);
hideComponents(fileChooser.getComponents());
private void hideComponents(Component[] components) {
for (int i= 0; i < components.length; i++) {
if (components[i] instanceof JPanel)
hideComponents(((JPanel)components[i]).getComponents());
else if (//component to remove)//what do I check for in here?
components[i].setVisible(false);
}
Run Code Online (Sandbox Code Playgroud) 我不是要问如何在JTable中显示一个Component,因为在线有几个教程和示例.但是,我想知道最好的解决方法是什么.
举例来说,我碰到最教程有创建单独的类(主类,一个扩展的例子JTable,在延伸TableModel,一个扩展TableCellRenderer,等等).但是,我发现你不仅可以在一个类中完成它,而且可以通过简单地使用以下方法来实现:
主要
public class Main
{
public static void main(String[] args)
{
javax.swing.JFrame jf = new javax.swing.JFrame("A table with components");
jf.setLayout(new java.awt.BorderLayout());
jf.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
jf.add(new TableWithCompsPanel(), java.awt.BorderLayout.CENTER);
jf.setVisible(true);
}
}
Run Code Online (Sandbox Code Playgroud)
TableWithComps
public class TableWithCompsPanel extends java.awt.Container
{
private Class<?> tableColumnClassArray[];
private javax.swing.JTable jTableWithComps;
private Object tableContentsArray[][];
public TableWithCompsPanel()
{
tableContentsArray = new Object[][]
{
{"This is plain text", new javax.swing.JButton("This is a button") },
{new javax.swing.JLabel("This is an improperly rendered label!"), new javax.swing.JCheckBox("This …Run Code Online (Sandbox Code Playgroud) 问题是,当我调整大小时,JFrame动画继续使用它的Pre提供的尺寸JComponent.有没有办法,我可以更新我的方式width和height变量,我调整JFrame,让动画可以随着新坐标运行.
简单来说,说JComponent有初始width = 300和height = 300,所以BALL里面这些举动规定Co-ordinates.现在,如果我调整我的JFrame,大小为JComponent仍然为是即width = 300和height = 300,但我所期待的,是修改这些变量与窗口的当前大小的方式.如果我在解释我的问题时缺乏某些东西,请告诉我.
这是我正在使用的代码:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class BallAnimation
{
private int x;
private int y;
private int count;
private int width;
private int height;
private int speedValue;
private boolean flag;
/*
* These variables are used to keep track of …Run Code Online (Sandbox Code Playgroud) 我有一个Swing应用程序,主框架和其他一些形式加载.我需要实现一个通用方法来为任何表单上的所有按钮设置手形光标.
这类似于我们在网页上用css做的事情(input[type=button] { cursor:pointer; })
我jScrollPane在表格上有一个按钮.该按钮为其添加了一个组件jScrollPane.我正在使用FlowLayout带有中心对齐的组件来安排组件jScrollPane.
第一个组件没有出现问题,并且完美对齐.当我再次按下按钮时,似乎没有任何事情发生.当我按照调试器时,它显示一切都像以前一样发生.
单击按钮时执行的代码:
jScrollPane.getViewport().add(new Component());
Run Code Online (Sandbox Code Playgroud)
这就是我在设置FlowLayout上Viewport的jScrollPane:
jScrollPane.getViewport().setLayout(new FlowLayout(FlowLayout.CENTER));
Run Code Online (Sandbox Code Playgroud) 我想让JGraphX图形组件(https://github.com/jgraph/jgraphx)的背景成为一种特定的颜色.我尝试了任何Swing组件的标准调用:
graphComponent.setBackground(Color.BLACK);
Run Code Online (Sandbox Code Playgroud)
但这没有效果.我试图强制重新组装组件,没有运气.呼叫是否不正确,还是有某种特定方式强制刷新?
我有一个包含一堆字符串的JList.我希望它像Set一样,因此它只能保存唯一值.有没有办法实现这一点,而不检查那里还没有新的字符串?
java ×10
jcomponent ×10
swing ×10
background ×1
cursor ×1
fonts ×1
jbutton ×1
jfilechooser ×1
jgraphx ×1
jlist ×1
jtable ×1
mouseevent ×1
performance ×1
resize ×1