有没有办法使用终端命令打开具有给定URL的新Safari选项卡?我只对它在OSX上工作感兴趣.如果有人知道怎么做,请告诉我,因为我无法通过浏览网页找到答案.我想使用该命令从java应用程序打开一个新选项卡.谢谢 !
我正在使用鼠标监听器来了解用户何时点击JTree的节点.虽然当用户单击箭头以扩展节点(查看子节点)时,会抛出以下异常:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Core.ChannelView$1.mousePressed(ChannelView.java:120)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:263)
at java.awt.Component.processMouseEvent(Component.java:6370)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
Run Code Online (Sandbox Code Playgroud)
ChannelView监听器:
MouseListener ml = new MouseAdapter() {
public void mousePressed(MouseEvent e) {
TreePath selPath = tree.getPathForLocation(e.getX(), e.getY());
if (e.getClickCount() == 1) {
line 120>>>>> System.out.println(selPath.getLastPathComponent());
} else if (e.getClickCount() == 2) {
System.out.println("Double" +selPath.getLastPathComponent());
}
}
};
tree.addMouseListener(ml);
Run Code Online (Sandbox Code Playgroud)
关于我应该如何处理这个案子的任何建议?我应该简单地在if语句中尝试捕获吗?这也是检查双击的好方法,或者我应该使用不同的方法吗?谢谢
我正在尝试测试给定的Java应用程序,为此我想使用JUnit.
我面临的问题如下:一旦我尝试测试的代码完成其工作,它的调用System.exit(),关闭应用程序.虽然它也阻止我的测试完成,因为它关闭了JVM(我假设).
无论如何都要解决这个问题,而不修改原始代码?最初我尝试从新线程启动应用程序im测试,虽然这显然没有太大的区别.
我在名为 model.py 的文件中有以下架构
from mongoengine import *
class Subject(Document):
uri = StringField(required=True)
resources = ListField(ReferenceField(ResourceSubject))
class ResourceSubject(Document):
subject = ReferenceField(Subject,reverse_delete_rule=CASCADE)
resource = ReferenceField(Resource)
class Resource(EmbeddedDocument):
uri = StringField()
title = StringField()
snippet = StringField()
image = StringField()
source = StringField()
adapter = StringField()
Run Code Online (Sandbox Code Playgroud)
出于某种原因,当我尝试初始化主题subj = Subject(uri="hello").save()时,出现名称错误:NameError: name 'ResourceSubject' is not defined。
我不明白原因,我猜这与框架有关?我尝试将各个文件中的类分开然后导入,但我仍然遇到相同的错误。我错过了什么?
在这一行抛出错误: resources = ListField(ReferenceField(ResourceSubject))
我在Flask应用程序中使用以下配置:
class StagingConfig(Config):
DEBUG = False
MONGO_DB_NAME = "res_stage_database"
@classmethod
def init_app(cls, app):
import logging
from logging.handlers import RotatingFileHandler
rotating_handler = RotatingFileHandler(filename='gunicorn.out', maxBytes=10000000, backupCount=5)
rotating_handler.setLevel(logging.INFO)
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")
rotating_handler.setFormatter(formatter)
app.logger.addHandler(rotating_handler)
app.logger.info("Using StagingConfig")
app.logger.error("Using StagingConfig")
Run Code Online (Sandbox Code Playgroud)
(上面,仅附加错误消息gunicorn.out- 2015-04-26 18:03:38,182 - 错误 - 使用StagingConfig)
由于此配置用于分阶段应用程序,我希望DEBUG为False,因此我不会在出现错误时获得Flask调试屏幕,而是标准错误500屏幕.虽然由于某种原因,当DEBUG设置为False时,除错误之外的错误消息的记录将停止.
一旦DEBUG设置为True,就会正确进行日志记录.这些值不应该是独立的,因为我在日志记录处理程序上设置了我的日志级别吗?
之前已经问过这个问题,但由于某些原因我仍然无法弄清楚什么是错的.我在文件src中的包语法测试中得到了一个名为NewClass的类.从src路径我输入:
javac src/syntaxtest/NewClass.java
并且编译了类,我可以在syntaxtest文件夹中看到NewClass.class.现在从同一个路径或甚至与NewClass.class相同的文件夹,我无法弄清楚如何从终端运行该类.我做了很多不同的尝试,但我得到了以太
ClassDefNotFound或ClassDefNotFound(错误的名称:syntaxtest/NewClass)
我希望我的GUI在出现JOptionPane时进行一些检查.因为我找不到任何其他方式,我虽然每次应用程序窗口失去焦点时都可以执行这些操作(它只是检查字符串).出于这个原因,我在我的JFrame上添加了以下代码:
appFrame.addWindowListener(new WindowAdapter() {
@Override
public void windowLostFocus(WindowEvent e) {
System.out.println("Focus Lost");
}
@Override
public void windowClosing(WindowEvent e) {
//some other stuff here that work
}
});
Run Code Online (Sandbox Code Playgroud)
关闭窗口的监听器工作正常.虽然当JFrame没有集中时没有任何反应.每次从JFrame切换到其他窗口时,是否应该打印"Focus Lost"?此外,当显示JOptionPane时是否会触发此方法?
我的应用程序JOptionPane在某些时候使用s来输入信息.在显示的同时JOptionPane,可以在通过网络从其他客户端制作的GUI上进行更改.这些可以是文本JTextArea,也可以是节点更改JTree.
这是否意味着我需要JOptionPane在新线程上创建,以便在JOptionPane激活期间所做的更改不会出现问题?
我在互联网上看了几个地方,但我得不到明确的答案.
ps JOptionPane是在用户单击按钮时创建的.
我需要在CoffeeScript应用程序中使用JavaScript库.由于我不熟悉这两种语言,我尝试了一些简单的方法.我的coffeescript档案:
empty = require('models/empty')
class Contact extends Spine.Model
@configure 'Contact', 'name', 'email'
@extend Spine.Model.Local
create: ->
empty.one()
super
module.exports = Contact
Run Code Online (Sandbox Code Playgroud)
我的Javascript文件名为empty.js:
console.log('what')
function one () {
console.log('one')
};
Run Code Online (Sandbox Code Playgroud)
coffeescript文件正常工作,虽然我不能使empty.one()工作.'what'打印在控制台上,表示已加载JS文件.虽然调用one()时出现以下错误:
未捕获的TypeError:对象#没有方法'one'
我已经尝试了许多不同的方法来定义函数,作为变量,并使用我在教程中找到的不同语法,虽然这似乎都不起作用.有人能说出我犯的错误吗?
有没有办法控制循环的执行速度?我有一个以30000步循环运行的模拟.我想想象一下在那个循环中发生的事情,如果可能的话,在运行时控制执行的速度.任何想法我怎么能这样做?
java ×7
swing ×3
python ×2
terminal ×2
coffeescript ×1
command-line ×1
flask ×1
javascript ×1
jframe ×1
joptionpane ×1
jtree ×1
junit ×1
junit4 ×1
listener ×1
logging ×1
loops ×1
macos ×1
mongodb ×1
mongoengine ×1