小编wch*_*gin的帖子

在启动应用程序时设置JFrame的最大大小

我想在启动应用程序时设置JFrame的最大大小.问题是,如果屏幕分辨率更高,我的帧越来越大,但那时它不应超过定义的最大范围,但同样的情况下工作正常,分辨率低.

就像我希望我的框架最大为(500,500),所以我写了这段代码:

JFrame frame = new JFrame("FRAME TRANSPARENT");
frame.setSize((int)(Toolkit.getDefaultToolkit().getScreenSize().getWidth()-50), (int)(Toolkit.getDefaultToolkit().getScreenSize().getHeight()-150));
frame.setMaximizedBounds(new Rectangle(0,0 , 500, 500)); 
frame.setVisible(true);
Run Code Online (Sandbox Code Playgroud)

即使我设置了绑定,JFrame正在考虑使用setSize方法,似乎它忽略了setMaximizedBounds方法.我已经尝试使用setMaximumized方法,但获得了相同的输出.

java swing jframe

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

`WindowListener`表演,永久射击

我有一个扩展的抽象类的应用程序JDialog.该类作为abstract void onClose(),并且在类的构造函数中添加了以下代码:

addWindowListener(new WindowAdapter() {
    @Override
    public void windowClosed(WindowEvent e) {
        onClose();
    }
}
Run Code Online (Sandbox Code Playgroud)

事件在预期时被触发,但随后发生了一件奇怪的事情.当这个类的一个具体的延长有代码来创建一个新JDialogonClose()方法,这JDialogdefaultCloseOperationJDialog.DISPOSE_ON_CLOSE,该事件被解雇持续,直到我强制退出操作.

我已将代码隔离到以下SSCCE:

// package removed
// imports removed
public class SSCCE extends JDialog {
    public static void main(String[] args) {
        SSCCE s = new SSCCE();
        s.pack();
        s.setVisible(true);
    }
    public SSCCE() {
        setLayout(new GridLayout(1, 0, 0, 0));
        JButton btn = new JButton("click me");
        btn.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent arg0) { …
Run Code Online (Sandbox Code Playgroud)

java swing jdialog windowlistener

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

编码:knitr和子文件

我使用Windows 7,R2.15.3和RStudio 0.97.320与knitr 1.1.不知道我的pandoc版本是什么,但我几天前下载了它.

sessionInfo()
R版本2.15.3(2013-03-01)平台:x86_64-w64-mingw32/x64(64位)

locale:
[1] LC_COLLATE=Spanish_Argentina.1252  LC_CTYPE=Spanish_Argentina.1252    LC_MONETARY=Spanish_Argentina.1252
[4] LC_NUMERIC=C                       LC_TIME=Spanish_Argentina.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] tools_2.15.3  
Run Code Online (Sandbox Code Playgroud)

我想在html和Word中获取我的报告,所以我使用markdown和pandoc.我用西班牙语写下了元音和元音的重音:n:á-úñ.

我看了很多帖子,我看到的问题类似于我用新版本解决的问题knitr.但有一个问题我没有找到解决方案.

当我开始,我用的是'system default'出现的在编码RStudio对话框,即ISO 8859-1,与RStudio预告伟大的工作.然而,当我试图获取Word文档时,pandoc在强调的元音上窒息.我发现了一篇帖子,展示了如何解决这个问题iconv:

iconv -t utf-8"myfile.md"| pandoc -o"myfile.docx"| iconv -f utf-8

虽然这确实解决了pandoc's无法识别的utf-8角色投诉,但出于某种原因pandoc停止查找我的情节,并出现如下错误:

pandoc:找不到图像`figure/Parent.png',跳过...

如果我只使用非重音字符,pandoc会查找没有问题的图像.我.md用 …

r utf-8 pandoc knitr

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

重命名整个 Git 提交历史记录中的目录

我正在尝试重命名六个提交前以及所有后续提交中引入的目录。这些提交尚未被推送。

我尝试了什么?

  • 我尝试过使用git filter-branch命令mv old new,但之前提交失败,HEAD~6因为该目录不存在。
  • 我尝试过git rebase -i HEAD~6编辑每个提交,但我无法使用,mv old new因为 git 锁定了文件,也无法在 Windows 资源管理器中重命名它。
  • 我尝试过相同的变基,cp -R old new; rm -rf old; git add new但这会产生合并冲突HEAD~4

可能值得注意的是,引入此目录的提交是此分支中的第一个提交(该分支比 之前有六个提交),并且自从我分支出来以来master我还没有触及过。master

我也读过这个问题

最好的方法是什么?

git git-rebase

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

如何在安全的 Rust 中为未调整大小的类型及其拥有的对应物(如 `str` 和 `String`)创建新类型?

我想创建一对新类型Tag(str)and TagBuf(String),类似于 howPathPathBufwrap OsStrand OsString。我的最终目标是拥有一个TagBuf以 为键的地图,并且能够只用一个索引来索引它Tag

fn main() {
    let mut m: HashMap<TagBuf, i32> = HashMap::new();
    m.insert(TagBuf("x".to_string()), 1);
    assert_eq!(m.get(Tag::new("x")), Some(&1));
}
Run Code Online (Sandbox Code Playgroud)

但是我遇到了问题,因为它Tag是动态大小的。

具体来说,实施起来Borrow<Tag> for TagBuf很棘手:

pub struct Tag(str);
pub struct TagBuf(String);

impl std::borrow::Borrow<Tag> for TagBuf {
    fn borrow(&self) -> &Tag {
        let s: &str = self.0.as_str();
        // How can I turn `&str` into `&Tag`? A naive attempt fails:
        &Tag(*s)
    }
}
Run Code Online (Sandbox Code Playgroud)
error[E0277]: …
Run Code Online (Sandbox Code Playgroud)

rust newtype

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

NSIS - 仅在安装时运行程序

我有一个工作的NSIS Modern UI 2脚本,它有五个组件.其中一个是主要应用程序,有四个帮助应用程序.由于应用程序的性质,它们都不需要另一个运行; 因此,它们都是可选安装.这包括主要应用程序.

在完成页面,我可以选择启动主应用程序

!define MUI_FINISHPAGE_RUN "$INSTDIR\MyProgram.exe"
!define MUI_FINISHPAGE_RUN_TEXT "Start the main program"
Run Code Online (Sandbox Code Playgroud)

只要在此之前

!insertmacro MUI_PAGE_FINISH
Run Code Online (Sandbox Code Playgroud)

命令.但是,如果用户没有安装主应用程序,我不希望该复选框可见(或至少启用).

我已经尝试将前两行放入其中Section MainSection,但它没有显示该框,因为到那时,UI已经被创建了.

我不希望总是启用它并指向一个在安装后运行的函数,并显示MessageBox其他情况.

有没有办法做到这一点?

installer nsis

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

`root`在不同的地方变化

在ActionScript 3中,我读过root变量引用了Document Class的一个实例.

在我的文档类构造函数中,trace(this == root)返回一个true.稍后在构造函数中,调用另一个类的构造函数.但是,这个构造函数表明了这root一点null.最后,从事件侦听器跟踪给我的结果root[object Stage].

我的目标是拥有一个Document Class(in MainGame.as)的单个实例,并且能够(root as MainGame)在我的ActionScript程序中引用它.我怎样才能做到这一点?

如果重要,我的所有代码都在默认包中.

谢谢!

flash actionscript actionscript-3 document-class

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

为什么Java的"受保护"受保护的程度低于默认值?

在Java中,我们有四个访问说明:public,protected,包私有的(默认),和private.这是 ,而不是我的问题.

我的问题是关于命名protected.如下所示,给一个字段package-private的默认访问说明符可以防止包外的子类使用它,但是应用关键字protected实际上并不保护它 - 相反,它将它打开到子类任何包裹.

那么,为什么不protected保护东西; 为什么它比没有修饰符的限制更少

java terminology access-specifier semantics

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

如何在不同声部的音符之间插入一个平局?

我在右手(高音)部分有两个声音的钢琴乐谱.如何在不同声部的两个相同音高音符之间插入一个平局?

这就是我到目前为止所拥有的.我想把第(A)行的最后一个音符连接到第(B)行的第一个音符,将第(C)行的最后一个音符连接到第(D)行的第一个音符.

\version "2.16.2"
\relative c'' {
  \time 12/8
  \key f \minor
  <<
    {
      aes2.~ \mp
      aes8 ees bes' c bes aes~
    } \\
    {
      ees2. s2.
    }
  >> |
  <<
    {
      aes2.~
      aes8 ees bes' c bes aes~      % (A)
    } \\
    { }
  >> |
  <<
    {
      c2.~
      c8 ees, bes' c bes aes~       % (C)
    } \\
    {
      aes4. ees4.~ ees8 s8 s8 s4.   % (B)
    }
  >> |
  <<
    {
      bes'2.~ bes8 ees, bes' c bes …
Run Code Online (Sandbox Code Playgroud)

lilypond

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

为什么for循环使用分号?

在大多数C派生语言(C,Java,Javascript等)中,for循环具有相同的基本语法

for (int i = 0; i < 100; i++) {
    // code here
}
Run Code Online (Sandbox Code Playgroud)

为什么这个语法包含分号,当分号通常保留在行尾时?另外,为什么之后没有分号i++

language-agnostic

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