我正在开发一个Java应用程序.
我用MockupScreens创建了这个界面.请看这些照片.


第一次,只有一个元素,用户必须输入信息(标题和描述),然后他开始按需要添加元素.他可以随时编辑元素信息.他也可以删除或更改这些元素的顺序......
如何创建像图片一样的东西?????
提前致谢.最好的祝福,
我在Java Swing中了解这些部分.我的问题是如何动态插入这个按钮块.

我明白了,我必须把JButton放在JPanel上,然后通过添加,删除和重新排序来操作JPanel ......所以Grid Layout将有效地在每个面板之后添加每个面板,但是考虑重新排序顺序会很困难...
请给我任何建议.:)
搜索后,我得到一个想法:

让我们将这些JButton放在一个名为btnsUnit的JPanel中,然后通过添加,删除和重新排序来操作它......所以GridLayout可以高效地在每个JPanel之后添加每个JPanel.
这就是为什么我创建了一个新的JPanel,它将包含一个未知数量的ListbtnsUnit JPanel,我将10固定为最大数字.
当你回复我时,我正在做这些步骤.我没有到达在ListbtnsUnit JPanel中添加btnsUnit JPanel.
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import java.awt.Color;
import java.awt.GridLayout;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JTextField;
public class setupDeviceList extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
setupDeviceList frame = new setupDeviceList(); …Run Code Online (Sandbox Code Playgroud) 在大多数系统上,我的JLabel中的内容都很好.它的存在方式应该始终足以显示其内容文本,因为我基本上这样做:
label.setText(text);
label.setFont(new Font(fontName, 0, 12));
int width = label.getFontMetrics(label.getFont()).stringWidth(text);
int height = 21; // this should always be enough
label.setBounds(new Rectangle(x, y, width, height));
Run Code Online (Sandbox Code Playgroud)
但是在某些系统上(不是我自己的,所以我无法真正调试它那么容易),它会剪切文本并在最后显示"......".
您可以在此处查看完整代码,您可以在此处查看示例(Abbildungen_Bijektiv_X3).
我也有一些类似的JButton案例.
我怎么能强迫Swing不这样做?(即使它认为组件太小.)
Swing究竟在哪里处理这个?我浏览了JButton一些相关类的代码但是我没有真正找到它切割文本的代码并添加了省略号.
我有一个JButton,当玩家点击它时,它会告诉我的Action Listener单击一个按钮.我想知道的是,有一个命令或某些东西就像玩家点击了按钮一样.
就像Tic Tac Toe一样,我有2个玩家可以互相对战,但我想为电脑玩家和人类玩家添加选项.但由于计算机实际上无法点击按钮,我迷路了.
编辑:它会像gridButton2.click()(按钮名称)一样容易.click();
我试图在JButton上放一行两行文字; 例如
+----------+
| READER |
| STOP |
+----------+
Run Code Online (Sandbox Code Playgroud)
但是我无法将它集中在按钮上.我去属性编辑器对JButton,并输入<html><center>READER<br>STOP了文本属性.这导致两个单词相对于彼此居中,但是它们一起看起来仍然朝向按钮面的右侧移动,如:
+----------+
| READER|
| STOP |
+----------+
Run Code Online (Sandbox Code Playgroud)
还有水平和垂直对齐和文本位置属性,我将它们全部设置为CENTER,但这没有任何我能看到的效果.
编辑:这里是一个例子,说明当我<center>完全省略时它是如何布局的,以防任何人对我的描述感到困惑"读者和停止是相互尊重的左对齐,但在按钮上右对齐":
+----------+
| READER|
| STOP |
+----------+
Run Code Online (Sandbox Code Playgroud)
编辑:这是NetBeans生成的代码:
readerStopButton_.setBackground(javax.swing.UIManager.getDefaults().getColor("Button.light"));
readerStopButton_.setFont(new java.awt.Font("Geneva", 0, 12)); // NOI18N
readerStopButton_.setText("<html><center>READER<br>STOP</center></html>\n");
readerStopButton_.setToolTipText("<html><b>Stop</b> button is currently inactive. ");
readerStopButton_.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
readerStopButton_.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
readerStopButton_ActionPerformed(evt);
}
});
operationButtons_.add(readerStopButton_);
Run Code Online (Sandbox Code Playgroud)
编辑:这是按钮对我的看法的屏幕截图.有很多我不知道做布局,所以我很可能省略一些关键信息.但基本上我让NetBeans完成所有工作,除了提供HTML文本.
编辑:打开一个显示所有按钮的替换屏幕截图.请注意,不使用HTML的单词(单字单词)正确对齐,而使用HTML的两个正在搞乱.

我能够使JFrame完全透明,JButton部分透明,直到我在按钮上移动鼠标(不要单击)并从按钮移开鼠标(通过MouseListener调用MouseExited).会发生什么是JButton的背景再次被绘制,所以在按钮上打开和关闭几个鼠标后,按钮完全不透明.
public class ButtonExample extends JWindow
{
public ButtonExample( )
{
JButton But = new JButton( "Testing" );
But.setBackground( new Color( 0, 0, 0, 200 ) );
But.setForeground( new Color( 70, 155, 255 ) );
this.add( But );
this.setBackground( new Color( 0, 0, 0, 0 ) );
this.setMinimumSize( new Dimension( 200,100 ) );
this.setVisible( true );
}
public static void main( String[ ] Args )
{
new ButtonExample( );
}
}
Run Code Online (Sandbox Code Playgroud) 无论如何设置一个id为JButton.我已经习惯了Android.
我正在寻找以下内容:
newButton.setId(objectcounter);
Run Code Online (Sandbox Code Playgroud) 我现在正在开发一款使用扫描仪与用户互动的游戏.游戏是第一个基于文本的,所以Java控制台视图是我以前玩的.现在我必须将游戏转换为Gui或Jframe,因此我希望能够在框架内具有相同的控制台功能,同时还能够使用扫描仪.有任何想法吗?我是新编码所以任何帮助或相同的代码将不胜感激!谢谢
为什么不推荐使用Button.enable?我需要使用我的按钮的方法,但它已被弃用,所以它没有任何效果.
我该如何解决?还有其他选择吗?
我正在尝试实现一个非常简单的GUI,它只包含一个pushButton.我希望它只是以START作为标签开始.然后按下它变为STOP.当用户第一次将回调设置为true并更改标签时,单击该按钮.第二次单击Button时,布尔值变为false,GUI关闭.
我在MATLAB中找不到任何关于如何制作这样的简单GUI的东西.GUIDE工具对我来说毫无意义,似乎产生了这么多无用的代码.Matlab的按钮是Jbuttons中包装所看到这里
我正在使用Java开发老虎机,到目前为止我创建了一个随机生成两张图片的按钮.我的代码编译但是当我运行它时,我在paint方法中放入的所有东西都没有显示出来.有什么我想念的吗?感谢您的帮助,这是我的一些代码.
public void paint(Graphics g) {
super.paintComponents(g);
g.drawString("Int 1 is" + int1,30,30);
g.drawString("Int 2 is" + int2,30,80);
switch (int1) {
case 0:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img, 300, 500, this);
break;
case 1:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img2,300,500,this);
break;
case 2:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img3,300,500,this);
break;
case 3:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img4,300,500,this);
break;
case 4:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img5,300,500,this);
break;
case 5:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img6,300,500,this);
break;
case 6:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img7,300,500,this);
break;
case 7:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img8,300,500,this);
break;
case 8:
g.setColor(Color.white);
g.fillRect(300,300,300,500);
g.drawImage(img9,300,500,this);
break;
case 9:
g.setColor(Color.white); …Run Code Online (Sandbox Code Playgroud)