小编Eng*_*uad的帖子

HTMLUnit不等待Javascript

我有一个基于GWT的页面,我想使用HtmlUnit为它创建一个HTML快照.页面使用产品上的Ajax/JavaScript信息加载,因此大约1秒钟就会出现Loading ...消息,然后会显示内容.

问题是HtmlUnit似乎没有捕获信息,我得到的只是"Loading ..."范围.

下面是一个带有HtmlUnit的实验代码,我试着给它足够的时间等待加载数据,但它似乎没有改变任何东西,我仍然无法捕获GWT javascript加载的数据.

        WebClient webClient = new WebClient();
        webClient.setJavaScriptEnabled(true);
        webClient.setThrowExceptionOnScriptError(false);
        webClient.setAjaxController(new NicelyResynchronizingAjaxController()); 

        WebRequest request = new WebRequest(new URL("<my_url>"));
        HtmlPage page = webClient.getPage(request);

        int i = webClient.waitForBackgroundJavaScript(1000);

        while (i > 0)
        {
            i = webClient.waitForBackgroundJavaScript(1000);

            if (i == 0)
            {
                break;
            }
            synchronized (page) 
            {
                System.out.println("wait");
                page.wait(500);
            }
        }

        webClient.getAjaxController().processSynchron(page, request, false);

        System.out.println(page.asXml());
Run Code Online (Sandbox Code Playgroud)

有任何想法吗...?

java ajax gwt htmlunit

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

为什么我们不使用它后关闭`System.out`流?

我只是想知道,我们通常在最后关闭流,但为什么我们不关闭System.outPrintStream System.out.close()

java stream printstream system.out

20
推荐指数
3
解决办法
2811
查看次数

a + = b和a = + b之间有什么区别,还有++和++ a?

正如我在标题中提到的,

a + = b和a = + b之间有什么区别,还有++和++ a?我有点困惑

java

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

将侦听器添加到ArrayList

我有一个ArrayList,我动态地添加了一些对象,我有一个JButton.运行我的程序时,ArrayList为空,JButton设置为setEnabled(false).我想在ArrayList中有2个元素时启用我的按钮,如果ArrayList有一个项目或为空,则再次禁用它.我怎样才能做到这一点?

java arraylist listener

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

Java - 具有水平滚动的垂直"FlowLayout"

正如标题中所描述的那样,我一直试图设置一种带有水平滚动的垂直流布局.布局中的组件将是JLabel.让我画一幅画:

+-------------------------+   <--- window
|Label1   Label4    Label7|
|Label2   Label5    Label8|   <--- labels
|Label3   Label6    Label9|
|<===============>========|   <--- scrollbar
+-------------------------+
Run Code Online (Sandbox Code Playgroud)

同一窗口,垂直扩展

+--------------------------+   <--- window
|Label1   Label5    Label9 |
|Label2   Label6    Label10|   <--- labels
|Label3   Label7    Label11|
|Label4   Label8    Label12|
|<===================>=====|   <--- scrollbar
+--------------------------+
Run Code Online (Sandbox Code Playgroud)

因此,标签将填充可用的垂直空间,然后创建一个新列.一旦可用的水平空间耗尽,就会出现水平滚动条.

通常不应出现垂直滚动条; 但是,如果窗口的垂直高度非常小,那么有一个垂直滚动条会很不错.

任何帮助是极大的赞赏.我是Java的新手,所以任何额外的解释都会很精彩.谢谢!

编辑:

根据以下回复,我现在正在使用:http: //tips4java.wordpress.com/2008/11/06/wrap-layout/http://code.google.com/p/verticalflowlayout/

我有WrapLayout扩展VerticalFlowLayout:

package LogicSim;

import java.awt.*;
import javax.swing.JScrollPane;
import javax.swing.SwingUtilities;

/**
 *  FlowLayout subclass that fully supports wrapping of components.
 */
public class VerticalWrapLayout extends VerticalFlowLayout …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jframe layout-manager

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

0xp0打印0.0(十六进制浮点数字)

我只是想知道为什么这个编译?它是什么意思,因为它编译?

System.out.println(0xp0); // p?
Run Code Online (Sandbox Code Playgroud)

OUTPUT:

0.0
Run Code Online (Sandbox Code Playgroud)

java

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

Scala中的GUI编程

我正在尝试学习Scala,我想通过编写一个简单的swing应用来学习,但我不确定在功能世界中GUI编程是什么样的,特别是在使用Scala时.

来自OO/Java背景的任何指针,教程或陷阱都非常受欢迎.

java user-interface swing functional-programming scala

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

用android中的字符串中的另一个字符替换字符?

我想在android中替换另一个角色..我的代码:

et = (EditText) findViewById(R.id.editText1);
String str = et.getText().toString();
str.replace(' ','_');
et.setText(str);
System.out.println(str);
Run Code Online (Sandbox Code Playgroud)

但这里的"空间"并没有被"下划线"取代..我也尝试了其他角色..

请帮忙!!

java android replace special-characters

16
推荐指数
3
解决办法
4万
查看次数

列表清单

我是Java的新手,我需要列出一系列列表.我可以在python中完成它,因为列表的元素可以是一个列表,因此在嵌入列表list[0]中将引用一个列表并list[0][0]引用嵌入列表的zeroeth元素.有没有简单的方法在java中实现这种行为?

java list

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

从右到左设置JFrame Orientation!

为了将我的JFrame从左到右对齐,我使用:

setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
Run Code Online (Sandbox Code Playgroud)

但这只有在我使用JFrame的以下样式(装饰)时才有效:

public class RightToLeft {
  public static void main(String []args){
    javax.swing.SwingUtilities.invokeLater(new Runnable(){
      public void run() {
        try { UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); }
        catch (Exception e) { e.printStackTrace(); }
        JFrame.setDefaultLookAndFeelDecorated(true);
        JFrame frame = new JFrame("??????? ???????");
        frame.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
        frame.setSize(300,300);
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.setVisible(true);
      }
    });
  }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但我希望它没有这种装饰.如何解决这个问题?

编辑:

@mre我想要一个像这样的JFrame:

在此输入图像描述

EDIT2:

我真的需要修复这个问题,所以我提供500+给谁一个像这样的JFrame(使用WindowsLookAndFeel):

在此输入图像描述

java swing arabic jframe orientation

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