小编ten*_*ica的帖子

如何使用另一个组合框swing来控制组合框

我有两个组合框,第一个项目是(女性和男性).我想当用户在第一个组合框中选择女性时,女性服装列表将出现在第二个组合框中,当男性被选中时,男士服装列表将出现在第二个.可以使用JCombo框执行此功能吗?如果是的话我该怎么办呢?请给我举个例子.任何帮助将不胜感激.

java swing

4
推荐指数
1
解决办法
1万
查看次数

GrailsParameterMap 在 Grails 中不可序列化

在我的 grails 应用程序中,在 tomcat 上运行并在应用程序服务器之间进行了会话复制,当我在 http 会话中保存地图时,如下所示,出现异常 GrailsParameterMap is not Serializable -

session.nextUrl = [controller: controllerName,
                               action: actionName,
                               params: params]
Run Code Online (Sandbox Code Playgroud)

当我按如下方式更改上述代码段时,即使 java.util.HashMap 实现了 Serializable,我也遇到了相同的异常。

java.util.Map nextUrl = new java.util.HashMap()

nextUrl.put("controller", controllerName)
nextUrl.put("action", actionName)
nextUrl.put("params", params)
session.setAttribute("nextUrl", nextUrl) 
Run Code Online (Sandbox Code Playgroud)

我还可以看到会话中的 get/set 工作正常。

我该如何解决这个问题。

提前致谢, Prashant

java grails

4
推荐指数
1
解决办法
1106
查看次数

由于.properties文件加载,可执行.jar无法启动

我有运行可执行.jar文件的问题.我创建了一个包含.properties文件的项目.当我从eclipse启动它时,它工作得很好,但是当我将它导出到可执行的.jar文件并尝试运行它时:

java -jar myfile.jar
Run Code Online (Sandbox Code Playgroud)

我得到以下异常:

(无法在此处发布图片) http://imageshack.us/photo/my-images/824/29583616.png/

我已经检查了.jar中的清单文件,它包含了

Class-Path: .
Run Code Online (Sandbox Code Playgroud)

这是属性文件加载:

properties = new Properties();
    properties.load(new FileInputStream(
            "src/com/resources/treeView.properties"));
Run Code Online (Sandbox Code Playgroud)

知道导致这个异常的原因吗?

java jar executable-jar properties-file

4
推荐指数
1
解决办法
3823
查看次数

keyPressed事件不一致:有时会触发,有时不会触发,重新启动程序而不更改任何内容,它可能会或现在可以正常工作

好的,所以我在这里非常沮丧.这段代码只是一个非常简单的移动JComponent.

奇怪的是,当我完全没有改变时,keyPressed事件将是非常不一致的.我启动程序,有时它会起作用,我的球会在屏幕上移动.另一方面,我将关闭它并打开它而不改变任何东西,它将无法工作.我不认为焦点是一个问题,虽然我真的不太了解它.我不知道是怎么回事.

任何帮助,将不胜感激.我只是没有看到该程序如何如此不一致地失败并取得成功.

这是我在角色课上的代码,因为我认为只给你一个片段会有所帮助.我不知道这只是我,还是其他什么,但如果你想编译它,看看,继续吧.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;


public class Character extends JComponent implements KeyListener
{    
Timer timer = new Timer(5, new TimeListener());
private int x = 250;
private int y = 300;
char whichTimer;


public Character()
{
    addKeyListener(this);
    setFocusable(true);
    requestFocusInWindow();
    repaint();
}

public void keyReleased(KeyEvent e)
{
    if(e.getKeyCode() == KeyEvent.VK_W)
    {
        timer.stop();
    }
    if(e.getKeyCode() == KeyEvent.VK_A)
    {
        timer.stop();
    }
    if(e.getKeyCode() == KeyEvent.VK_S)
    {
        timer.stop();
    }
    if(e.getKeyCode() == KeyEvent.VK_D)
    {
        timer.stop();
    }
}
public void keyPressed(KeyEvent e)
{ …
Run Code Online (Sandbox Code Playgroud)

java swing focus keypress keylistener

4
推荐指数
1
解决办法
416
查看次数

JScrollPane和JPanel

所以,我正在制作一种文本编辑器,我需要一个JScrollPane来进行垂直导航.但我无法让它发挥作用.

我已经阅读了前十页谷歌搜索结果的每一个怪异教程,我无法让它发挥作用.

可以说我有JFrame(大小1000x800).我想在其中放置一个JPanel(1000x2000),以便它与JFrame水平对齐.我想在JPanel的右侧贴上一个简单的滚动条,这样我就可以了解其余内容.

我缩小了尺寸,我已经将JPanel添加到JScrollBar,反之亦然,将其中一个添加到JFrame,两者都没有,但没有.

所以,在这一点上,我不介意几行完成的代码......

编辑:很好,这是代码......

mWindow = new JFrame(lang.getString("title"));
mWindow.setSize(1000, 800);
mWindow.setLocationRelativeTo(null);
mWindow.setResizable(false);
mWindow.setLayout(null);
mWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

mWindow.setVisible(true);

workspace = new JPanel();
workspace.setBounds(0,0, 1000, 1203);
workspace.setBackground(Color.RED);

scroll = new JScrollPane(workspace, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scroll.setBounds(0, 20, 600, 600);
//scroll.setLayout(null);
mWindow.getContentPane().add(scroll);
mWindow.repaint();
mWindow.validate();
Run Code Online (Sandbox Code Playgroud)

这显示了JPanel的一部分(600X600,(JScrollPane大小)),并显示滚动条,但不可滚动

java swing jpanel jscrollpane

4
推荐指数
1
解决办法
2万
查看次数

处理类之间的事件

我有一个带有Editor类(带有JTextPane)和Toolbar类的主类(带有JList和Jbutton,我不想使用JToolBar).这两个类由许多组件组成,我不想将它们混合到同一个类中.我希望编辑器和工具栏进行通信.假设我在工具栏中写了"Hello",然后点击Submit.我希望文本窗格显示"Hello".我用这种方式构建类:

public class Main{
    public MainGUI(){
        initComponents();
    }

    private void initComponents(){
        JFrame mainframe=new JFrame("Main Frame");
        Editor editor=new Editor();
        Toolbar toolbar=new Toolbar();
        mainframe.getContentPane().setLayout(new BorderLayout());
        mainframe.getContentPane().add(editor, BorderLayout.CENTER);
        mainframe.getContentPane().add(toolbar, BorderLayout.NORTH);
        mainframe.setVisible(true);
    }
}

public class Editor extends JPanel{
    public Editor(){
        super();
        initComponents();
    }

    private void initComponents(){
        JTextPane textpane=new JTextPane();

        this.setLayout(new BorderLayout());
        this.add(textpane, BorderLayout.CENTER);
    }
}

public class Toolbar extends JPanel{
    public Toolbar(){
        super();
        initComponents();
    }

    private void initComponents(){
        JTextField textfield=new JTextField();
        JButton submitbutton=new JButton("Submit");

        this.setLayout(newFlowLayout());
        this.add(textfield);
        this.add(submitbutton);
    }
}
Run Code Online (Sandbox Code Playgroud)

我应该如何在工具栏和编辑器之间实现事件处理?

java events swing communication class

4
推荐指数
1
解决办法
5442
查看次数

如何使用Spring和Hibernate在项目中通过PowerMockito模拟SessionFactory或Session?

我正在开发一个使用Spring和Hibernate的项目.我有一个包含SessionFactory的抽象DAO.我需要为我的单元测试模拟SessionFactory或Session.但到目前为止我还没有成功.下面是代码.任何人有任何想法?谢谢.

这是我的AbstractDAO

public abstract class AbstractDAO {
    protected JdbcTemplate jdbcTemplate;
    protected SessionFactory sessionFactory;
    protected NamedParameterJdbcTemplate namedParameterJdbcTemplate;
    ...

    @Autowired
    public void setSessionFactory(SessionFactory sessionFactory) {
            this.sessionFactory = sessionFactory;
    }}
Run Code Online (Sandbox Code Playgroud)

这是我的ConcreteDAO

public class LoginDAO extends AbstractDAO implements InitializingBean {
    ...
    public User getLoggedinUserByUserid(Long userid){
            log.info("in getLoggedinUserByUserid"); 
            User result = null;
            Session session = sessionFactory.openSession();
            try {
            session.beginTransaction();
            result = (User) session.get(User.class, userid);
            session.getTransaction().rollback();
            session.close();
            } catch (Exception e) {
            log.error(e,e);
            session.getTransaction().rollback();
            session.close();
            }

    return result;
     }
...}
Run Code Online (Sandbox Code Playgroud)

这是我的测试课

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "LoginDAOTest-context.xml" …
Run Code Online (Sandbox Code Playgroud)

junit spring hibernate mockito powermock

4
推荐指数
1
解决办法
1万
查看次数

Java-Swing:使用HTML设置所选文本颜色

我在查找如何使用HTML设置JList的选定文本的颜色时遇到问题.

使用Java Swing和HTML我已经设法为我的JList中的每个String的特定部分着色,我的示例如下所示:

在此输入图像描述

这是理想的,因为我可以为每个条目设置多种不同的颜色!

但是,选择文本时,只有默认的黑色文本变为白色!html颜色的文本保持其颜色而不是变成白色,这导致一些非常难以阅读的文本的某些颜色:

在此输入图像描述

如何在选择时设置文本颜色?

我已经尝试在JList上使用JList的setSelectionForeground(Color.WHITE)方法,但它不影响html颜色的文本(尽管它确实影响了非html颜色的文本)

我还阅读了Oracle的HTML-in-Swing教程(我首先发现了HTML着色)但找不到解决方案.

这是我的简短示例的代码:

import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.UIManager;
import java.awt.Color;

public class JListSelectionColorTest extends JFrame {

    private String[] exampleText = {"Some example text without any color changes",
        "Some more example text without color changes",
        "Even more plain text!", 
        "<html>Uncolored Text! <font color=orange>Now some example Text with color!</font> more Uncolored Text!</html>", 
        "<html>Uncolored Text! <font color=green>And some more example text with color! Text, Text, Text!</font> more Uncolored Text!</html>",
        "<html>Uncolored Text! <font color=red>A string with red …
Run Code Online (Sandbox Code Playgroud)

html java swing text colors

4
推荐指数
1
解决办法
3896
查看次数

配置Capybara使用Marionette WebDriver for Firefox

随着Marionette取代FirefoxDriver,我需要配置我的测试来运行它.我已经下载了二进制文件,但我似乎无法将我的Capybara驱动程序注册配置为实际使用Marionette.

Capybara.register_driver :selenium_firefox do |app|
  capabilities = Selenium::WebDriver::Remote::Capabilities.firefox
  capabilities["firefox_binary"] = 'path/to/marionette/renamed/to/wires'
  Capybara::Selenium::Driver.new(app, browser: :firefox, desired_capabilities: capabilities)
end
Run Code Online (Sandbox Code Playgroud)

当我开始测试时,我只是得到FF的初始页面,就像我试图在没有牵线木偶的情况下运行它一样.

selenium capybara selenium-firefoxdriver firefox-marionette

4
推荐指数
1
解决办法
2570
查看次数

KeyListener不适用于JTextField

对不起我的英语不好.我在使用JTextField和KeyListener时遇到了一些问题.我有以下代码:

package com.gugnovich.tasks;   
@SuppressWarnings("serial")
public class Task1Panel extends Task {

    private static final String zLabel = "Please enter Z:";
    private static final String eLabel = "Please enter E:";
    private static final double K = 1.4;

    private JTextField zField;
    private JTextField eField;
    private JTextField result;

    private double zVal;
    private double eVal;
    private double resultVal;


    @Override
    protected void displayTaskPanel() {
        /** Panel settings */
        setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
        setBorder(new EmptyBorder(10, 15, 10, 10));
        /** Add title of the task */
        JLabel title = …
Run Code Online (Sandbox Code Playgroud)

java swing keylistener jtextfield

3
推荐指数
1
解决办法
2532
查看次数