我有以下内容:
public class ParametricEQView extends JPanel implements PluginView {
private static final int BAND_WIDTH = 3;
private static final int THROW_HEIGHT = 64;
private static final int WIDTH = 128*BAND_WIDTH + 2*MARGIN;
private static final int HEIGHT = 2*THROW_HEIGHT + 2*MARGIN;
private static final int MID_HEIGHT = THROW_HEIGHT + MARGIN;
private final ParametricEQ _peq;
public ParametricEQView(ParametricEQ peq) {
super();
_peq = peq;
SwingUtils.freezeSize(this, WIDTH, HEIGHT);
setToolTipText("Parametric Equalizer");
}
@Override
public void paint(Graphics g) {
final Graphics2D g2d = (Graphics2D) g; …
Run Code Online (Sandbox Code Playgroud) 我一直在制作倒计时节目,我想出了这个.
package main;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class Gatoo extends JFrame implements ActionListener {
private int sec, min, secTot, since = 999;
private long lastTime;
private JTextField mm = new JTextField(2), ss = new JTextField(2);
private JLabel minLab = new JLabel("Minutes:"), secLab = new JLabel(
"Seconds:");
private JButton start = new …
Run Code Online (Sandbox Code Playgroud) 我有一个List
的Map<String, Integer>
.每个Map
实例都包含productName作为键,产品价格作为值.
List<Map<String, Integer>> products = GET_ALL_PRODUCTS();
Run Code Online (Sandbox Code Playgroud)
例如,List可以包含具有以下数据的Maps:
地图1:
"prod1" : 10
"prod2" : 5
"prod3" : 2
Run Code Online (Sandbox Code Playgroud)
地图2:
"prod3" : 3
"prod4" : 6
Run Code Online (Sandbox Code Playgroud)
地图3:
"prod1" : 12
"prod4" : 8
Run Code Online (Sandbox Code Playgroud)
我需要生成一个新的Map<String, Integer>
,其中包含productName作为键,但每个产品的累计价格金额为值.那是:
新地图应包含:
"prod1" : 10+12
"prod2" : 5
"prod3" : 2+3
"prod4" : 6+8
Run Code Online (Sandbox Code Playgroud)
我最终得到了以下代码,我想知道生成这个新代码的最有效方法是什么Map
?
Map<String, Integer> cumulativeMap = new HashMap<String, Integer>();
for(int i=0; i< products.size(); i++){
Map<String, Integer> product = products.get(i);
...
}
Run Code Online (Sandbox Code Playgroud) 我有一个带有 DefaultTreeModel 的 JTree。我需要到达它的每个节点。
想象一下我有这棵树:
[A]
|-[B]
|-[C]
|-[D]
| |-[E]
| |-[F]
| |-[G]
| |-[H]
|-[I]
|-[J]
|-[K]
Run Code Online (Sandbox Code Playgroud)
我需要遍历它并打印出来:
---[A]---
>[B]
>[C]
>---[D]---
>>---[E]---
>>>[F]
>>>[G]
>>>[H]
>>+++[E]+++
>+++[D]+++
>[I]
>[J]
>[K]
---[A]---
Run Code Online (Sandbox Code Playgroud)
所以,我正在使用
java.util.Enumeration en = root.preorderEnumeration();
while (en.hasMoreElements()) {}
Run Code Online (Sandbox Code Playgroud)
但我想不出一个工作功能。我需要在启动节点时放置---NODE NAME---并用+++NODE NAME+++结束节点,但我无法做到这一点。如果只有 Parent 节点不是另一个 Parent 的最后一个元素,我就让它工作到一定程度。但是当最后一个节点也是父节点时它会中断。任何帮助,将不胜感激。
编辑:
现在我注意到它甚至没有我想象的那么好。这是我当前的输出:
----root (81)----
name
time
displaySize
----New Group1----
BaseX
BaseY
----New Group2----
BaseRadius
----New Group3----
Angle
DistanceFromCenter
++++New Group3++++
PlayerSpeed
MouseX
MouseY
++++New Group3++++
PlayerX …
Run Code Online (Sandbox Code Playgroud) 如何检查JButton是否被按下?我知道有一个方法,它的名字是"isEnabled"
所以我尝试编写一个代码进行测试.
这里的代码:
final JButton btnAdd = new JButton("Add");
btnAdd.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
panel.add(btnAdd);
JButton btnConfirm = new JButton("Check Out");
btnConfirm.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (btnAdd.isEnabled()) {
System.out.println("Add Button is pressed");
}
if (!btnAdd.isEnabled()) {
System.out.println("Add Button is not pressed");
}
}
});
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,代码只提供"按下添加按钮",虽然我没有按"添加"按钮.为什么会这样发生?
我的任务是检索文本字段的值,并在单击按钮时将其显示在警告框中.如何在java swing中为按钮生成on click事件?
我正在切换JEditorPane
到WebEngine
(JavaFX).
我曾经按如下方式锁定文本突出显示(选择)JEditorPane
.
my_editor.setEditable(false);
my_editor.getInputMap().put(KeyStroke.getKeyStroke("control C"), "none");
Run Code Online (Sandbox Code Playgroud)
现在我喜欢这样做WebEngine
,我怎么能这样做?禁用复制,突出显示和编辑模式.谢谢.
当我创建一个JTree并调用时setRootVisible(false)
,我看不到小树打开图标,我仍然可以双击节点来展开它但是在第一级看不到它们.有任何想法吗?
我正在用(略微修改的)JButton制作扫雷的克隆.因为扫雷中有很多游戏牌,所以我将它们存储为阵列.当我尝试使用for循环将按钮添加到Frame时,我会在按钮上获得nullpointerexception.ButtonObject类是从JButton类扩展而来的,只有两个额外的变量和getter/setter方法.出了什么问题?
码:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
public class Minesweeper extends JFrame implements ActionListener{
JLabel starttitle;
ButtonObject[] minefield;
JFrame frame;
Random r = new Random();
int rand;
JPanel startscreen;
JPanel gamescreen;
int gamesize;
JButton ten;
JButton tfive;
JButton fifty;
GridLayout layout;
public Minesweeper()
{
frame = new JFrame("Minesweeper");
frame.setSize(500,500);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);;
startscreen = new JPanel();
startScreen();
}
public void startScreen()
{
ten = new JButton("10 x 10");
tfive = new JButton("25 x 25");
fifty = new …
Run Code Online (Sandbox Code Playgroud)