a只能在这里决赛.为什么?如何a在onClick()不将其保留为私有成员的情况下重新分配方法?
private void f(Button b, final int a){
b.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
int b = a*5;
}
});
}
Run Code Online (Sandbox Code Playgroud)如何5 * a点击它返回?我的意思是,
private void f(Button b, final int a){
b.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
int b = a*5;
return b; // but return type is void
}
});
}
Run Code Online (Sandbox Code Playgroud)假设我有一个具体的类Class1,我正在创建一个匿名类.
Object a = new Class1(){
void someNewMethod(){
}
};
Run Code Online (Sandbox Code Playgroud)
现在有什么方法可以重载这个匿名类的构造函数.如下图所示
Object a = new Class1(){
void someNewMethod(){
}
public XXXXXXXX(int a){
super();
System.out.println(a);
}
};
Run Code Online (Sandbox Code Playgroud)
用xxxxxxxx命名构造函数?
Java中的"Instance Initializers"有什么意义?
我们不能只将那段代码放在构造函数的开头吗?
我将如何为实现接口的内部类编写构造函数?我知道我可以创建一个全新的课程,但我认为必须有一种方法可以做到这一点:
JButton b = new JButton(new AbstractAction() {
public AbstractAction() {
super("This is a button");
}
public void actionPerformed(ActionEvent e) {
System.out.println("button clicked");
}
});
Run Code Online (Sandbox Code Playgroud)
当我输入它时,它不会将AbstractAction方法识别为构造函数(编译器要求返回类型).有没有人有想法?
如何使用WebDriverWait等待属性更改?
在我的AUT中,我必须等待按钮在继续之前启用,不幸的是由于开发人员编写页面的方式我不能使用WebElement的isEnabled()方法.开发人员正在使用一些CSS来使按钮看起来像被禁用,因此用户无法点击它,方法isEnabled总是为我返回true.所以我要做的是获取属性"aria-disabled"并检查文本是"true"还是"false".到目前为止我一直在做的是使用Thread.sleep的for循环,如下所示:
for(int i=0; i<6; ++i){
WebElement button = driver.findElement(By.xpath("xpath"));
String enabled = button.getText()
if(enabled.equals("true")){ break; }
Thread.sleep(10000);
}
Run Code Online (Sandbox Code Playgroud)
(如果不正确,请忽略上面的代码,只是我正在做的伪代码)
我确信有一种方法可以使用WebDriverWait实现类似的东西,这是我无法弄清楚如何的首选方法.这就是我想要实现的,即使以下方法不起作用:
WebDriverWait wait = new WebDriverWait(driver, 60);
wait.until(ExpectedConditions.visibilityOf(refresh.getText() == "true"));
Run Code Online (Sandbox Code Playgroud)
显然它不起作用,因为函数期望WebElement不是String,但它正是我想要评估的.有任何想法吗?
Promise<List<WrapSpec>> wrapSpecPromise = new Job() {
@Override
public List<WrapSpec> doJobWithResult() throws Exception {
return PkgLoad.findDistinctWrapSpecBetweenDates(pkgLine, startDate, endDate);
}
}.now();
Run Code Online (Sandbox Code Playgroud)
是否可以将值pkgLine,startDate,endDate传递给此方法?谢谢你的帮助.
编辑:这是建议反对的东西吗?或不.谢谢.
for ( final PkgLine pkgLine : pkgLineList ) {
Promise<List<WrapSpec>> distinctWrapPromise = new Job() {
@Override
public List<WrapSpec> doJobWithResult() throws Exception {
return PkgLoad.findDistinctWrapSpecBetweenDates( pkgLine, startDate, endDate );
}
}.now();
promiseList.add( distinctWrapPromise );
}
Run Code Online (Sandbox Code Playgroud) 以下是我的代码:
JLabel label1 = new JLabel("testcontent");
label1.setBounds(131, 57, 205, 74);
frame.getContentPane().add(label1);
JButton btn1 = new JButton("run");
btn1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
btn1.setBounds(169, 206, 117, 25);
frame.getContentPane().add(btn1);
Run Code Online (Sandbox Code Playgroud)
当我尝试在actionPerformed中引用label1时,eclipse找不到label1.任何人都可以告诉我什么是错的?