我的按钮中有.jpg图像.我还想在图像上放置一些文字.我使用以下语法:
JButton btn = new JButton(label,icon);
Run Code Online (Sandbox Code Playgroud)
但我没有看到按钮中的文字(只有图像).我究竟做错了什么?
我已经添加了一个按钮JPanel.如果JPanel包含按钮,我想删除按钮.有没有办法检查是否JPanel包含按钮?
我想创建一个看起来像firefox地址栏的textwidget /组件.我的意思是一个Textfield,它允许我在场内放置小按钮(例如取消/重装/ ......)
我尝试通过创建自定义布局管理器来自定义JLayeredPane,该管理器最大化Textfield,并将其余部分从右到左放置.我的问题是这给了绘画问题,我不会总是看到我在文本字段中添加的项目.这可能与Jython有关,我试着提供java.lang.Integer(1)给JLayeredPane.add.然而,层的排序与文档所说的完全相反.
为了实现这个目的,我派生了我自己的JLayeredPane类并重新定义paint了调用paintComponents哪个反过来遍历所有组件并调用他们的paint方法,从文本框开始,其余的后来.
但是我并不总是立即得到更新,这意味着按钮被隐藏/仅部分显示,我无法与按钮交互.
编辑:在我使窗口变小之后,按钮仅显示在正确的位置,之后它也是可点击的
编辑2:我自由地将答案归结为此,隐藏了很多按钮代码/不必要的东西
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.*;
public class playground {
private Icon errorIcon = UIManager.getIcon("OptionPane.errorIcon");
private Icon infoIcon = UIManager.getIcon("OptionPane.informationIcon");
private Icon warnIcon = UIManager.getIcon("OptionPane.warningIcon");
public playground() {
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.add(makeButton(), BorderLayout.WEST);
JTextField text = new JTextField(20);
text.setBorder(null);
panel.add(text, BorderLayout.CENTER);
JPanel buttonsPanel = new JPanel();
buttonsPanel.setOpaque(false);
buttonsPanel.setLayout(new GridLayout(1, 2, 2, …Run Code Online (Sandbox Code Playgroud) 我目前是一个java新手,编写一个程序,基本上是一个棋盘游戏,几乎与跳棋相同.不幸的是,这也意味着我需要一百个JButtons用于棋盘.我知道有一种方法可以自动生成JButton,我已经看过它了.不过,我不知道怎么会这样做.任何帮助,将不胜感激!
我希望在按下按钮时继续执行工作,使用Java.释放按钮后,工作应该停止.像这样的东西:
Button_is_pressed()
{
for(int i=0;i<100;i++)
{
count=i;
print "count"
}
}
Run Code Online (Sandbox Code Playgroud)
我怎么能实现这个目标?
我需要添加一个"清除计算器"的按钮,以及一个退出butPanel上的程序的按钮.它也需要是非常基本的Java代码,因为我是初学者,并且有一个糟糕的comp.sci.老师.我有一个带退出按钮的代码示例,但我不确定如何将它放入我的程序中.我已经尝试了这么多.此外,如果有一个更好的"错误检查"方式,将非常感激.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Calculator2 extends JFrame implements ActionListener
{
JLabel heading = new JLabel ("2. Calculator");
JLabel intro1 = new JLabel ("This program stimulates a four-function calculator.");
JLabel intro2 = new JLabel ("It takes an operator and a number. It can add, subtract,");
JLabel intro3 = new JLabel (" multiply and divide. Enter in the format eg. '+35'. ");
JLabel inLabel = new JLabel (" Operation: ");
JLabel outLabel = new JLabel (" Total: …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个从数据库中获取数据的动态表,并将这些数据添加到单独的行中.我想为每行(动态)添加一个额外的单元格,其中包含两个按钮...并且在单击这些按钮时会发生一些事件应该只在相应的行上发生 ..
(PS:我已经设法从数据库中获取数据并将其添加到表中虽然..)
这是一个例子:
_____________________________________________________________
ID | Name | Application for leave | Accept/Reject |
--------------------------------------------------------------
1 |AD | xxxxxxxxxxxxxxxxxx |AcceptButton RejectButton|
2 |SD | xxxxxxxxxxxxxxxxxx |AcceptButton RejectButton|
3 |PD | xxxxxxxxxxxxxxxxxx |AcceptButton RejectButton|
4 |DD | xxxxxxxxxxxxxxxxxx |AcceptButton RejectButton|
5 |MD | xxxxxxxxxxxxxxxxxx |AcceptButton RejectButton|
--------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
AcceptButton和RejectButton应该在运行时期间随每行动态添加.如果我按下AcceptButton或RejectButton,该行应自动删除,并且数据库中具有相应ID的行应该更新.
我的任务是检索文本字段的值,并在单击按钮时将其显示在警告框中.如何在java swing中为按钮生成on click事件?
我正在为我的项目创建一个gui.首次加载gui时,只能看到背景,因此按钮不可见,但当鼠标悬停在它们上面时,它们是可见的.有什么办法解决这个问题?
public class Home extends JFrame{
//New JPanel
private JPanel home;
//Creating image url. You must be change url
ImageIcon icon = new ImageIcon("img//home1.jpeg");
//Home Class
public Home(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 960, 640);
setTitle("LoneyTunes Crush");
home = new JPanel();
home.setBorder(new EmptyBorder(5, 5, 5, 5));
home.setLayout(new BorderLayout(0, 0));
setContentPane(home);
getContentPane().setLayout(null);
JLabel background = new JLabel(new ImageIcon("img//giphy."));
getContentPane().add(background);
background.setLayout(new FlowLayout());
//Creating Buttons
JButton play = new JButton("Play");
play.setBounds(20, 20, 200, 30);
JButton setting = new JButton("Settings");
setting.setBounds(20, 60, 200, 30);
JButton exit …Run Code Online (Sandbox Code Playgroud) 我是Java Swing的新手,我遇到了一些问题.
因此,如下面的代码所示,我有一个JFrame,我调用MainPanel类来创建一个面板并添加一个带按钮的ToolBar.按下按钮时,它会向面板添加一个按钮.在您调整窗口大小之前单击按钮时没有显示问题(在我的情况下,我只需手动拖动屏幕使其变大).
public class Main {
private static void createAndShowGUI() {
//Create and set up the window.
JFrame frame = new JFrame("MathMaker");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Create the menu bar. Make it have a green background.
//MainToolBar mainTB = new MainToolBar();
MainPanel mainPanel = new MainPanel();
frame.getContentPane().add(mainPanel.getGUI(), BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
//Schedule a job for the event-dispatching thread:
//creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
} …Run Code Online (Sandbox Code Playgroud)java ×10
jbutton ×10
swing ×9
jpanel ×2
awt ×1
background ×1
buttonclick ×1
image ×1
jcomponent ×1
jtable ×1
jtextfield ×1
jtoolbar ×1
methods ×1
onclick ×1
paint ×1
text ×1