小编Dan*_*son的帖子

如何进行TextArea拉伸以填充内容,在过程中扩展父级?

所以我有一个TextArea,当用户将段落粘贴到其中,或者只是在其中写入时,我希望它垂直展开以显示所有可用的文本.即不要在文本字段本身使用滚动条...就像许多网页上发生的情况一样.包括我自己在内的许多用户不喜欢被迫在一个小窗口中进行编辑.究竟Facebook状态更新框如何工作.

我试过了

myTextArea.autoSize()
Run Code Online (Sandbox Code Playgroud)

裹着一个

myTextArea.textProperty().addListener(new ChangeListener()....);

但这不起作用.我认为它很高兴自动调整到目前的大小.

左,右和顶部锚点设置为它的父级AnchorPane.我尝试了底部连接而没有连接.理想情况下,我希望随着textarea的增长而增长锚定窗格.

我不介意阅读TextProperty并计算我自己设置的触发器大小......但如果已经有最佳实践,这似乎是一种hacky方法.javafx的属性和子对象的数量是令人畏惧的,这似乎是一个在这里提出问题的好点,而不是试图弄清楚字体/段落占用了多少像素.

更新:

所以我想也许我是在思考它,而我所要做的就是关掉滚动条,剩下的就会发生.唉,寻找"滚动","垂直","vbar"的可用字段和方法,我找不到任何可以使用的东西.ScrollTopProperty看起来像是其他东西.

javafx-2 javafx-8

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

Vaadin可以为我的GWT Appengine应用程序提供哪些好处?

Vaadin网站上的GWT页面有点稀疏:https://vaadin.com/gwt

"只有好处,没有陷阱你将在GWT中享受你喜欢的一切,并获得新颖的服务器端编程模型,组件,工具,主题和其他附加功能的额外好处.如果你不喜欢你所看到的,那很容易只要你坚持使用com.google.*包就可以返回.你最终可能会开始使用com.vaadin.*包中的功能.但是没有必要担心 - Vaadin Framework也是在同一个版本下发布的自由派Apache 2.0许可"

我喜欢Vaadin网站上的一些外观和感觉,但我对"服务器端模型"感到紧张......如果可能的话,我宁愿让大部分代码在客户端运行,我正在检查GWT RPC再次调用(通常使用相同的java代码)以确保安全性.我不喜欢很多来回的想法.

鉴于我的担忧,是否值得深入挖掘Vaadin?还是我到此为止?我可以利用各种外观和感觉而不会让所有东西都陷入困境吗?任何其他关于杠杆作用的非直观答案都将受到赞赏.

更新:请不要回答比较Vaadin和GWT的问题,提供替代的UI框架.

我还使用了SmartGWT,GXT和捆绑的GWT小部件等.还熟悉一些非常完整的小部件集,如DevExpress for .NET.我问这个问题的原因是因为Vaadin LOOKS非常酷......我正在寻找这样的答案:不,不能从Vaadin中提取L&F而不影响客户端或者除了L&F之外,还有很酷的验证资料等等你可以使用的等等,然后可能是一些有用的证据来支持这个位置(尝试和失败).

gwt google-app-engine vaadin

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

在Android maven项目中使用Guice验证错误

所以我试图让Guice在我的android maven项目中运行并捆绑在第三方模块中.它在执行测试注入的正常junittest中运行良好,但在VM上失败并且下面附带了logcat消息.

我无法理解的是,有很多关于Guice在android上工作正常的报道.尽管如此,我的代码似乎在从Guice注入器调用getBeanInfo()时失败了.看来我不是唯一一个有这个错误的人.

有没有解决Android错误"无法解析虚拟方法java/beans/PropertyDescriptor"?

所以我有几个问题.是Guice不适合我的原因,因为我的第三方模块正在调用某些功能,这些功能会在任何地方失败但不常见?有没有办法从Guice获得更多信息,具体是什么触发了违规的getBeanInfo()?有工作吗?有什么途径可供我进一步调试.

该解决方案必须与maven兼容,因为针对类似问题调整eclipse设置的类似问题的答案不适用.得到"引起:java.lang.VerifyError:" (不是说我在这里得到了很多里程).

我认为所有相关文件都是由android maven插件由dx处理的,因为依赖:tree显示范围为"compile"的所有相关项目,但我不是这里的专家.

03-05 00:57:34.529: I/dalvikvm(2295): threadid=3: reacting to signal 3
03-05 00:57:34.568: I/dalvikvm(2295): Wrote stack traces to '/data/anr/traces.txt'
03-05 00:57:35.059: I/dalvikvm(2295): threadid=3: reacting to signal 3
03-05 00:57:35.098: W/nalizableReferenceQueue(2295): Could not load Finalizer in its own class loader. Loading Finalizer in the current class loader instead. As a result, you will not be able to garbage collect this class loader. To support reclaiming this class loader, either resolve the underlying issue, or …

android guice maven android-maven-plugin

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

IntelliJ社区版相当于Ctrl-T eclipse,去方法

所以我已经阅读了如何在IntelliJ IDEA中显示类的所有父类和子类的问题 但它并没有完全解决我的问题.

我习惯于在eclipse中找到一个方法,在类层次结构中的任何地方(jar或代码),点击Ctrl- T,它会显示上面和下面所有类的树形图,它实现了该方法(即,如果子类/超类没有'实现这个方法它不会显示它们).

从图中选择一个类时,它会精确地指向该方法.

似乎Ctrl- H显示一个通用的类图,不是特定于您选择的方法. Ctrl- Shift- H,似乎向您展示了方法层次结构,但只显示了您选择的方法的类和子类(而不是超类).

如何将层次结构向上导航到特定方法?鉴于1)我不知道该方法在什么级别被定义在它的最高点.另外2)鉴于可能有类似的方法名称,所以我不想依赖于通过键入找到它可能容易出错.

我认为这几乎是面包和黄油的功能,所以如果没有类似的话,我会感到失望.

更新:我发现的最好的是击中Ctrl- U有几次最终让你进入等级的顶层,然后击中Ctrl- Shift- H自然地向你展示下面的一切.这是一个日食和一些迷失方向的更多步骤,因为该工具并未准确显示您的位置.目前积分仍然是日食.

eclipse intellij-idea

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

如何在Gradle上运行AspectJ加载编织(特别是libgdx构建)

所以我想在我的libgdx游戏中注入一些测试和日志记录功能.

所以我在主桌面gradle依赖项中添加了以下内容.

    compile 'org.aspectj:aspectjweaver:1.8.2'
    compile "org.aspectj:aspectjrt:1.8.2"
Run Code Online (Sandbox Code Playgroud)

最初它没有找到依赖项,但是通过关闭离线模式并关闭并重新打开我的IntelliJ项目(Gradle同步按钮不起作用)解决了这个问题.

我的理解是aspectjweaver必须作为java代理加载.所以我找到gradle下载它的地方,并将以下内容添加到我的VM运行时配置选项中

-javaagent:/Users/daniel/.gradle/caches/modules-2/files-2.1/org.aspectj/aspectjweaver/1.8.2/4963c0bef4748d5ad039cc26c1ac32a082eb755e/aspectjweaver-1.8.2.jar
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,这给了我以下警告信息

objc[66447]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bin/java and /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined.
Run Code Online (Sandbox Code Playgroud)

没有-javaagent行,该消息不存在.

我试图按照这个例子来进行加载编织示例. http://andrewclement.blogspot.co.uk/2009/02/load-time-weaving-basics.html

但是,我不需要单独的可重用方面,因此我只是在src目录中创建了一个基本的aop.xml文件,其中包含以下内容.

<aspectj>
    <weaver options="-verbose"/>
</aspectj>
Run Code Online (Sandbox Code Playgroud)

显然我还没有设置任何东西,我只想确认设置是否正常.该教程与我的目标环境之间存在足够的差异,我认为很多可能会出错.

我不介意解决方案是编译时还是类加载,只要它在libgdx/gradle环境中可预测地工作即可.由于我不熟悉libgdx/gradle的建筑环境和要求,我选择了查看类加载解决方案.

Thanx提前.

更新:将尝试通过这个http://www.breskeby.com/2010/02/using-gradle-with-aspectj/

...但是教程中没有提到真正熟悉的iajc,并且知道如何在libgdx构建脚本中使用它也似乎很复杂.

java aspectj gradle libgdx

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

拦截GWT RPC的异步代理服务异常

我的应用程序有很多RPC调用,它们都有.onFailure(Throwable caught)方法.我在客户端和服务器代码NotLoggedInException之间共享一个类.如果用户没有基于会话/ cookie /权限等的相关权限,则由服务器抛出此操作.

理想情况下,我希望在其他地方传递给.onFailure()代码之前在一个地方处理此异常,因为这种处理无处不在并且需要安全性.有一个GWT.setUncaughtExceptionHandler(),但这似乎是在处理后调用不理想的(如果.onFailure意外消耗太多).

有人有一个优雅的解决方案吗?一个丑陋的解决方案是将延迟绑定的.create()代理包装在实现异步接口的同一聚合类中.

旁注:服务器之前发布了一个重定向,但我不喜欢这个范例,并希望它由应用程序的事件总线处理.

更新:上面提到的丑陋的答案

public abstract class CustomAsyncCallback implements AsyncCallback{

@Override
public CustomAsyncCallback(AsyncCallback<T> callback)
{
    this.wrap = callback ;
}

AsyncCallback<T> wrap ;


@Override
public void onFailure(Throwable caught) {
    if (!handleException())
{
    wrap.onFailure(caught) ;
}
}

@Override
public void onSuccess(T t) {
    wrap.onSuccess(t) ;
}
Run Code Online (Sandbox Code Playgroud)

}

public class WrapDeferredBinding implements RpcInterfaceAsync { RpcInterfaceAsync service = GWT.create(RpcInterface.class);

public void method1(int arg1, AsyncCallback<Boolean> callback)
{
    service.method1(arg1, new CustomAsyncCallback<Boolean>(callback)) ;
}

public void method2 ....
public void method3 .... …
Run Code Online (Sandbox Code Playgroud)

gwt exception-handling gwt-rpc

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

控制器在javafx helloworld中返回null

所以我当然直接创建一个简单的例子.

public class Main extends Application {

URL bla = getClass().getResource("/sample.fxml");

@Override
public void start(Stage primaryStage) throws Exception{
    //If you get weird errors: http://zenjava.com/javafx/maven/fix-classpath.html
        //but not actually my issue. Example displays fine in intellij.

    try {

        FXMLLoader loader = new FXMLLoader(bla);
        Parent root = loader.load(bla);

        primaryStage.setTitle("Hello World");
        primaryStage.setScene(new Scene(root));
        primaryStage.show();

        Controller controller = loader.<Controller>getController() ;
        assert(controller != null);
        controller.getLabel().setText("Kaboom!");
    } catch (Exception e) {
        // Exception gets thrown if the fxml file could not be loaded
        e.printStackTrace();
    }
}

public …
Run Code Online (Sandbox Code Playgroud)

javafx-2 fxml

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