小编Rog*_*ach的帖子

拦截java机关机调用?

有没有办法在实际关闭之前获得JVM关闭或System.exit调用的通知?我想要这个,所以我的应用程序将能够彻底退出.我意识到这样的事情不太可能存在,但是,也许有这样的事情?

java application-shutdown

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

如何在JFileChooser中禁止编辑目录名?

要在JFileChooser中浏览目录,用户可以使用双击.问题是,如果他们点击不够快,文件选择器认为他们想要编辑目录名称,这是非常烦人的.有没有办法禁用目录名称编辑?

java user-interface swing jfilechooser

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

如何使用GridBagLayout将组件放在右下角?

我需要在a中显示单个组件JPanel,并且我希望始终将该组件保留在右下角.我尝试用GridBagLayout做到这一点:

val infoArea = new TextArea {
  text = "Hello!"
  border = Swing.EmptyBorder(30)
  background = Color.RED
  editable = false
}
val p = new JPanel
p.setLayout(new GridBagLayout)
val c = new GridBagConstraints
c.gridx = 0
c.gridy = 0
c.anchor = GridBagConstraints.LAST_LINE_END
p.add(infoArea.peer,c)
val f = new JFrame
f.setContentPane(p)
f.setVisible(true)
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,文本区域处于中心位置:

在此输入图像描述

我在这做错了什么?

java layout user-interface swing scala

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

Scala值初始化

为什么在这个例子中,没有抛出错误,b最终保持默认值?

scala> val b = a; val a = 5
b: Int = 0
a: Int = 5
Run Code Online (Sandbox Code Playgroud)

scala

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

如何过滤 sbt 监视更改的文件?

我使用 emacs 作为我的编辑器,它有一个讨厌的习惯,即为这些文件附近的文件创建锁。似乎 sbt 也将该锁视为源文件,这会导致许多不必要的重建。

有没有办法告诉 sbt 它不应该监视名称以开头的文件中的更改.#

我尝试了以下内容:

watchSources in Compile <<= (watchSources in Compile) map { files =>
  println(files)
  files.filter(f => !f.getName.startsWith(".#"))
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用。

scala sbt

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

是否可以检测输出的去向 - 到终端还是到管道/文件?

less例如,当我编写将文本输出到 stdout 并使用颜色(通过转义序列)的程序时,如果输出转到其他程序(例如, grep)或文件,我想禁用这些颜色,因为颜色代码会弄乱输出。

是否可以从Java进程中做到这一点?

java io jvm scala

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

在Haskell中同时读取和写入同一文件时出错

我需要就地修改文件.所以我打算读取文件内容,处理它们,然后将输出写入同一个文件:

main = do
  input <- readFile "file.txt"
  let output = (map toUpper input) 
  -- putStrLn $ show $ length output
  writeFile "file.txt" output
Run Code Online (Sandbox Code Playgroud)

但问题是,只有当我取消注释第4行时才会按预期工作 - 我只是输出字符数到控制台.如果我不取消注释,我会得到

openFile: resource busy (file is locked)
Run Code Online (Sandbox Code Playgroud)

有没有办法强制阅读该文件?

file-io haskell locking lazy-evaluation lazy-io

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

有没有办法在Elisp中编写函数来编写函数?

我想创建一个函数,它返回几个其他函数的组合,这样

(funcall (compose 'f 'g) x) == (f (g x))
Run Code Online (Sandbox Code Playgroud)

我觉得我在这方面失败了.到目前为止我最好的尝试:

(defun compose (funcs)
  "composes several funcitons into one"
  (lambda (arg)
    (if funcs
        (funcall (car funcs) (funcall (compose (cdr funcs)) arg))
        arg)))
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,以下仍然返回0:

(funcall (compose '(
           (lambda (a) (* a 3))
           (lambda (a) (+ a 2))
)) 0)
Run Code Online (Sandbox Code Playgroud)

有办法解决这个问题吗?

emacs elisp

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

是否可以在scala宏中生成WeakTypeTag中的Apply?

我的WeakTypeTag宏中有一些类型,我想生成如下代码:

macroCreate[SomeObject] // => SomeObject(1)
Run Code Online (Sandbox Code Playgroud)

宏的定义将是这样的:

def macroCreate[A] = macro _macroCreate[A]
def _macroCreate[A](c: Context)(implicit wtt: c.WeakTypeTag[A]) = {
  c.Expr(Apply(Select(???, newTermName("apply")), List(c.literal(1).tree)))
}
Run Code Online (Sandbox Code Playgroud)

问题是,我如何得到Select给定的类型?

我可以使用一种解决方法,将类型转换为字符串,拆分"."然后创建一个Select字符串列表,但这看起来很糟糕.

是否可以Select直接从类型标签创建?

macros scala scala-2.10 scala-macros

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

是否可以在TypeScript中映射对象值类型?

例如,我有以下形式的功能:

function wrap<T>(item: T): W<T> {
}
interface W<T> {
  item: T;
}
Run Code Online (Sandbox Code Playgroud)

是否可以编写函数(mapValues),通过应用此wrap函数并返回正确键入的对象来转换给定的对象值?我理解如何编写实际的函数(lodash的_.mapValues工作正常),但我不知道是否可以应用正确的类型.

是否可以编写mapValues函数以便编译以下内容?

interface Before {
  a: number;
  b: string;
}

interface After {
  a: W<number>;
  b: W<string>;
}

let obj1: Before = { a: 1, b: "2" };
let obj2: After = mapValues(obj1);

function typecheck_number(arg: number) {}
function typecheck_string(arg: string) {}
typecheck_number(obj2.a.item);
typecheck_string(obj2.b.item);
Run Code Online (Sandbox Code Playgroud)

typescript

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