目前我有我的基页,它定义了菜单,内容,标题和页脚div。我设置我的孩子在内容区域..但我有一个标题栏,跨越我的标题和内容页面之间的顶部..在这里(标题栏)我设置一个标签,标签哪个菜单项页面用户目前正在使用
当我转到子页面时,我希望菜单栏的标题更改为子页面的名称..有没有办法从子代码中更改父项组件的这个标签?
我尝试使用getParent()。add(new Lable ....)并且这不起作用..所以现在,在父页面中我只有一个静态字符串,我在每个onClick之前更改了工作,但我觉得有可能更好的方式使用模型..我仍然明白这些是如何工作的。
谢谢!
答案 0 :(得分:2)
试试这个:
public abstract class ParentClass extends Page {
public ParentClass(String title) {
Label pageTitle = new Label("title", title);
add(pageTitle);
//add header, footer, and all you need...
}
}
你的孩子班:
public class ChildClass extends ParentClass {
private static final String TITLE = "This is the title of the ChildClass";
public ParentClass() {
super(TITLE);
//all the other code...
}
}
你尝试过这种方法吗?由于您的所有页面都必须从ParentClass继承,并且无法实例化ParentClass,因此它应该完成工作......
我的示例是假设您使用此模式添加页眉和页脚:
http://wicket.apache.org/learn/examples/markupinheritance.html