小编jay*_*jay的帖子

Java Swing应用程序不会退出

我有一个Java应用程序,它打开一个JFrame并绘制它.问题是,当我尝试退出应用程序时,通过关闭JFrame窗口(在我的Mac或PC上)或从菜单栏(在我的Mac上)选择退出,应用程序就会挂起.有趣的是,这种行为只有在我将JButton添加到我的应用程序后才出现.这是我的代码:

public class MyApplicationFrame extends JFrame {

public MyApplicationFrame(MyApplicationLogic l) {
    super();
    this.appLogic = l;
    try {
        SwingUtilities.invokeAndWait(new Runnable() {
            @Override public void run() {
                createAndShowGUI();
            }
        });
    }
    catch(InterruptedException e) { }
    catch(InvocationTargetException e) { }

    g = getGraphics();
}

public void paint() { ... }

private void createAndShowGUI() {
    final Container c = getContentPane();
    c.setLayout(new java.awt.FlowLayout());

    final JButton startButton = new JButton("Start");
            // if I comment out these lines with the startButton, everything works
    startButton.addActionListener(new ActionListener() {
        @Override …
Run Code Online (Sandbox Code Playgroud)

java swing

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

如何让Java Set每次以相同的顺序迭代?

有没有什么办法可以让我每次运行程序时都能以相同的顺序迭代其元素的Java Set对象(而不是SortedSet).(每次运行的元素都是相同的.)我正在尝试调试我的程序但是我无法重现我的错误,因为迭代器每次都以不同的顺序返回值.谢谢.

java

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

我可以用CSS"覆盖"HTML元素的宽度吗?

我正在用CSS做一些工作,我有一个<li>元素,<div>里面有一个元素.该<div>元件呈封闭的宽度<li>元素,但内部的文本内容<div>是宽于<li>(并因此进至两行).我想要做的是使其<div>宽度与其最长的文本元素相同,是否有人知道如何做到这一点?谢谢.

<ul style="display: inline-block; list-item-style: none">
  <li id="foo" style="float: left; list-style-type: none; position: relative;">
    <a href="...">brief text</a>
    <div id="bar" style="position: absolute; width=???">
      <ul>
        <li>a long chunk of text</li>
        <li>an even longer piece of text</li>
      </ul>
    </div>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

现在,的宽度div#bar等于它的封闭元件,的宽度的100% li#foo,并且宽度li#foo等于在其文本的宽度<a>标记(加填充和边框).我想做的是做div#bar宽度<li>an even longer piece of text</li>,但我无法弄清楚如何实现这一点,即使使用Javascript ....或者我将被迫使用绝对测量宽度?任何建议将不胜感激.

html css

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

Bash shell别名未按预期工作

我正在尝试编写一个shell脚本,它使用LibreOffice将.odt文件转换为.pdf,但却陷入了别名问题.我的内容如下~/.bash_profile:

alias soffice='/Applications/LibreOffice.app/Contents/MacOS/soffice'
Run Code Online (Sandbox Code Playgroud)

我的shell脚本中有以下行:

soffice --headless --convert-to pdf $filename
Run Code Online (Sandbox Code Playgroud)

这会产生"第14行:soffice:command not found"错误.我不知道发生了什么事,因为我可以打电话

$ alias
alias soffice='/Applications/LibreOffice.app/Contents/MacOS/soffice'
Run Code Online (Sandbox Code Playgroud)

$ soffice --headless --convert-to pdf thefile.odt
Run Code Online (Sandbox Code Playgroud)

也行得很好.有谁知道为什么别名在我的脚本中不起作用以及我能做些什么呢?谢谢.

bash shell

0
推荐指数
1
解决办法
908
查看次数

标签 统计

java ×2

bash ×1

css ×1

html ×1

shell ×1

swing ×1