小编kle*_*tra的帖子

获取'尝试改变通知'例外

我的目标是实现用户写入JTextPane的关键字的蓝色着色.这就是我的代码的样子:

private class DocumentHandler implements DocumentListener {

        @Override
        public void changedUpdate(DocumentEvent ev) {
        }

        @Override
        public void insertUpdate(DocumentEvent ev) {
            highlight();
        }

        @Override
        public void removeUpdate(DocumentEvent ev) {
            highlight();
        }

        private void highlight() {
            String code = codePane.getText();
            SimpleAttributeSet defSet = new SimpleAttributeSet();
            StyleConstants.setForeground(defSet, Color.BLACK);
            doc.setCharacterAttributes(0, code.length(), defSet, true);
            SimpleAttributeSet set = new SimpleAttributeSet();
            StyleConstants.setForeground(set, Color.BLUE);
            for (String keyword : keywords) {
                Pattern pattern = Pattern.compile(keyword + "(\\[\\])*");
                Matcher matcher = pattern.matcher(code);
                while (matcher.find()) {

                    //Just for test
                    System.out.print("Start index: …
Run Code Online (Sandbox Code Playgroud)

java swing jtextpane

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

更改JTree第一个节点的图标

我想只更改JTree图标的第一个节点.有一个JTree用于显示文件的文件管理器.这是一个示意图.如何更改图标?

Back
|->Please wait(this is leaf)


Folder 1
|->file1
   file2
   file3

Folder 2
|->file1
   file2
   file3

Folder 3
|->file1
   file2
   file3

java swing jtree

9
推荐指数
1
解决办法
7596
查看次数

如何确定图形字符串的长度?

我正在创建一个excel文档的图形时间轴,我需要在该事件的标记旁边有一个小事件名称标签.其中一些很容易,并且是正确的,但其他一些是合理的,我需要弄清楚它们的宽度,以便我可以正确地抵消它们.

window.drawString("7/4-Fourth of July",horizontalIndex-Offset,verticalIndex);
Run Code Online (Sandbox Code Playgroud)

目前我使用平均值为10和32的平均值来平均像素宽度,但这并没有真正削减它.有人可以帮助我获得确切的偏移吗?在此输入图像描述

java graphics swing font-size

9
推荐指数
1
解决办法
7092
查看次数

让ActionListener监听JTextField中的更改而不是仅输入?

因此,您可能知道,如果您有一个文本字段并且向其添加了ActionListener,它将只收听Enter按钮的按键.但是,我想让我的ActionListener监听文本中的更改.所以基本上我有这个:

    public static JPanel mainPanel() { 
    JPanel mainp = new JPanel(); 
    JTextArea areap = new JTextArea("Some text in the textarea"); 
    JTextField fieldp = new JTextField("Edit this"); 
    areap.setEditable(false); 
    fieldp.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            // TODO Auto-generated method stub
             if(//change in textfield, for instance a letterpress or space bar)
                   { 
                        //Do this
                   } 
        }
    });
    mainp.add(areap);
    mainp.add(fieldp); 
    return mainp;
}
Run Code Online (Sandbox Code Playgroud)

我可以通过任何方式收听文本中的更改(如actionPerformed事件中记录的那样)?

java swing actionlistener jtextfield

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

Java - 有按钮显示箭头

我想在Java中有一个显示箭头的按钮 - 就像在键盘上一样.到目前为止,我有这个

JButton arrowUp = new JButton("^");
JButton arrowDown = new JButton("v");
JButton arrowLeft = new JButton("<");
JButton arrowRight = new JButton(">");
Run Code Online (Sandbox Code Playgroud)

它有点工作......但看起来不太好看.

任何帮助如何改善这一点是值得赞赏的

java swing jbutton arrow-keys

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

Java - 通过JButton调用方法

如何通过按JButton来调用方法?

例如:

when JButton is pressed
hillClimb() is called;
Run Code Online (Sandbox Code Playgroud)

我知道如何在按下JButton时显示消息等,但想知道是否可以这样做?

非常感谢.

java swing jbutton

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

显示日历以在java中选择日期

在其他语言中,如VB,C#,在您希望用户输入日期的情况下,例如在文本框中,我们可以在您点击它时显示日历.因此,用户可以单击相应的日期,该日期将被放入文本框中.

通过这种方式,我们可以摆脱由于日期格式不正确而导致的问题.我需要知道如何在java中实现这一点?

实际上,我需要将它与JTable相结合.有一列需要输入日期.但是用户可以以各种格式输入日期.所以我想到了这样的事情.希望有一种方法可以轻松地做到这一点.

有谁请告诉我如何做到这一点.任何帮助是极大的赞赏..

谢谢.

java swing calendar date jtable

9
推荐指数
3
解决办法
11万
查看次数

JTable:如何获取选定的单元格?

我有一个JTable及其TableModel,它运行良好,但我现在要做的是获取它的选定单元格.我想过做的事情:

int rows = this.getTable().getRowCount();
int columns = this.getTable().getColumnCount();
for(int i = 0 ; i < rows ; i++)
{
    for(int j = 0 ; j < columns ; j++)
    {
         if(table.getCell(i,j).isSelected() //...
    }
}
Run Code Online (Sandbox Code Playgroud)

但当然这样的事情不存在.我该怎么做呢?

swing jtable cell selected

9
推荐指数
2
解决办法
5万
查看次数

带有TopLink的JPA:在类路径中找不到META-INF/persistence.xml

public class LoginTest {

public static void main(String[] args) {
    EntityManagerFactory emf = Persistence.createEntityManagerFactory("IRCBotPU");
    EntityManager em = emf.createEntityManager();

    em.getTransaction().begin();

    Login lg = new Login();
    lg.setPassword("password");
    lg.setUserName("Rocky");

    em.persist(lg);
    em.flush();

    Login st = em.find(Login.class, lg.getPassword());
    System.out.println(st);

    em.getTransaction().commit();

    em.close();
    emf.close();

}
}
Run Code Online (Sandbox Code Playgroud)

当我尝试运行这个类时,我遇到了异常

javax.persistence.PersistenceException: No Persistence provider for EntityManager named IRCBotPU:  
   No META-INF/persistence.xml was found in classpath.
Run Code Online (Sandbox Code Playgroud)

META-INF/persistence.xml在我的类路径中.我不知道是什么原因或这个例外.

持久性库是TopLink.

java persistence jpa toplink classpath

8
推荐指数
2
解决办法
3万
查看次数

Maven和GitHub的版本编号/发布机制

我正在尝试找出管理工作流的最佳方式,以允许使用Maven和Git进行版本编号和发布.

目前我的工作流程是:

  1. 编辑pom.xml以指示新的快照版本"1.2.3-SNAPSHOT"
  2. 提交git消息"开始工作1.2.3-SNAPSHOT"
  3. 编码工作,每次成功的"mvn测试"后提交等.
  4. 对版本感到满意后,将pom.xml版本编辑为"1.2.3"
  5. 提交消息"1.2.3发布"
  6. 添加标签"1.2.3"
  7. 部署代码(例如,推送到外部Maven存储库)
  8. GOTO 1.

我做"主"分支中的所有工作,除非我需要做一些实验(在这种情况下我切换到一个新的分支,定期合并)

这是一个明智的工作流程吗?我可以通过任何方式改进它.

java versioning git github maven

8
推荐指数
1
解决办法
531
查看次数