目前我有一個面板,其中說我有10個文本字段和10個下拉菜單。我想要禁用面板中除1個文本字段以外的所有組件。目前我正在做的是對面板中的所有組件調用setenabled false,並且只對1個組件啓用true。而不是這樣做,我寧願禁用整個面板並只在該面板中啓用1個特定組件。但是這不起作用。在檢票口可以嗎?誰能幫忙?Wicket:啓用面板組件時顯式禁用整個面板
1
A
回答
0
看看這個接口:IVisitor
visitChildren(new IVisitor<Component, Object>() {
@Override
public void component(Component object, IVisit<Object> visit) {
object.setEnabled(false);
}
});
這裏visitChildren()
是MarkupContainer
,你的Panel
是一個函數。
或者創建一個功能:
public static void setEnabled(boolean enabled, Component... components) {
for (Component component : components) {
component.setEnabled(enabled);
}
}
,並使用這樣的:
setEnabled(false, textfield1, textfield2, dropdown1, dropdown2);
0
禁用面板和覆蓋特殊成分的IsEnabled()函數返回true。 /當使用鏈接時,然後覆蓋保護布爾isLinkEnabled()和公共布爾canCallListenerInterface(方法方法)以及!當你有它,嘗試它,如果你得到ListenerInvocationNotAllowedException然後檢查是什麼原因造成它。它很好地寫在日誌中。您也可能會遇到其他異常情況,請嘗試調試它們,但我相信這一切都是可以解決的。 我的答案是基於Wicket 1.6(達到概念證明),但可能是1.5的解決方案。
我的特殊組件是DownloadLink。這裏的例子:
DownloadLink documentLink = new DownloadLink("documentLink", getFileModel(question), new PropertyModel<String>(getDefaultModelObject(), "answer.documentName")){
@Override
public boolean isEnabled() {
return true;
}
@Override
protected boolean isLinkEnabled() {
return true;
}
@Override
public boolean canCallListenerInterface(Method method) {
return true;
}
};
相關問題
- 1. Clojure:擴展Wicket面板並調用面板方法
- 2. WICKET:更新自制面板
- 3. 如何隱藏Wicket面板?
- 4. Wicket滑動面板/ div/x
- 5. Wicket面板(對話框)不起作用?
- 6. 面向網絡應用的另一個面板顯示面板
- 7. Wicket:是否可以根據面板添加到的頁面顯示面板的組件?
- 8. 使用jQuery啓用禁用面板中的控件
- 9. Unity2D:currentSelectedGameObject面板被禁用
- 10. 禁用表單面板
- 11. 禁用控制面板
- 12. 禁用網格面板
- 13. Wicket頁面與列表面板
- 14. 禁用面板上的特定控件
- 15. 無法啓用面板在更新面板之外的更新面板在asp.net
- 16. wxPython:從不同面板中禁用面板
- 17. Wicket:使用激活的面板轉至頁面
- 18. Wicket面板需要頁面刷新才能使用JavaScript腳本
- 19. Java:如何在顯示對話框時禁用點擊面板?
- 20. 更新面板刷新整個頁面
- 21. 內置搜索面板使用搜索麪板禁用整個網格。 2更多問題
- 22. 檢查面板啓用/禁用能見度
- 23. 啓用/禁用jQuery切換和ASP面板
- 24. 點擊jsf/primefaces中的按鈕啓用/禁用面板?
- 25. 統一 - 面板被禁用,然後立即重新啓用(C#)
- 26. 頁面顯示在應用面板
- 27. 如何從firefox插件中的面板中啓動面板?
- 28. 使用面板組織WinForms控件
- 29. Wicket - 刪除過時的頭文件/ AJAX面板替換
- 30. C#使用Graphics在面板內的面板上繪圖。第一個面板比第二個面板更大
_Disable面板和覆蓋特殊成分的IsEnabled()函數返回true_不爲我一個小組在工作了一個複選框,我檢票口6.18和6.24 –
你使用哪種CheckBox的實施? (因爲複選框是一個界面..) – BlondCode
複選框是一個類:https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/markup/html/form/CheckBox.html –