下一代的B/S開發框架--Echo 教程(5) (轉)
下一代的B/S開發--Echo 教程(5)
可編輯的下拉選單
我們知道HTML頁面上的下拉選單是不可編輯的. Echo可以讓我們輕鬆的變相實現. 先看看這個ComboBox怎麼用:
//下拉選單資料
String[] member = new String[]{"steeven","stella"};
FieldModel model = new DefaultSelectFieldModel(member);
//可勁重用吧:
ComboBox combo = new ComboBox("default text",selectFieldModel);
簡單嗎? 再來看看具體實現:
/************ComboBox.************ * 可編輯的下拉選單 */ import nextapp.echo.*; import nextapp.echo.event.*; public class ComboBox extends Panel implements ActionListener { private TextField input = new TextField(); //輸入框 private SelectField select = new SelectField(); //下拉框 private CheckBox check = new CheckBox(); //切換按鈕 public ComboBox(String text, SelectFieldModel model) { select.setModel(model); //設定下拉選單的內容 setText(text); //設定預設文字 select.setVisible(false); //預設不可見 add(input); add(select); add(check); check.addActionListener(this); //切換動作 } public void setText(String text) { this.input.setText(text); //設定文字框文字 //設定下拉框選定值 this.select.getModel().setSelectedItem(text); } public String getText() { return check.isSelected()?select.getSelectedItem().toString():input.getText(); } public void actionPerformed(ActionEvent e) { input.setVisible(!check.isSelected()); select.setVisible(check.isSelected()); //同步資料 if (check.isSelected()) select.getModel().setSelectedItem(input.getText()); else input.setText(select.getSelectedItem().toString()); } }
原理很簡單:
- 同時構造輸入框和下拉框, 根據旁邊核取方塊的狀態交替出現.
- 在切換時同步資料, 根據輸入框的值選中下拉框中的對應值, 或者把下拉框中的選定值複製到輸入框.
- 提供類似TextField的getText()和getText()方法.
是不是完全桌面的風格? 沒有寫任何HTML和指令碼.
這樣實現的ComboBox需要同互動, 在速度上稍顯不足. 這樣的互動完全可以用指令碼在上高效完成. 別擔心, Echo允許編寫自己的來實現特殊需求, 後面的章節會有介紹.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-992934/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 下一代的B/S開發框架--Echo 教程(6) (轉)框架
- 下一代的B/S開發框架--Echo 教程(7) (轉)框架
- 下一代的B/S開發框架--Echo 教程(8) (轉)框架
- 下一代的B/S開發框架--Echo 教程(2) (轉)框架
- 下一代的B/S開發框架--Echo 教程(3) (轉)框架
- 下一代的B/S開發框架--Echo 教程(4) (轉)框架
- 最新的B/S開發技術 (轉)
- Xamarin圖表開發基礎教程(5)OxyPlot框架框架
- 系統開發中的B/S架構架構
- B/S開發常用JavaScript技術JavaScript
- Web經典B/S快速開發框架,強大後臺+簡潔UI一體化開發工具Web框架UI
- Phoenix - 基於Elixir的下一代Web開發框架Web框架
- HTML5 開發框架HTML框架
- C/S框架網介紹|.NET快速開發平臺|Winform開發框架框架ORM
- 在b/s開發中經常用到的javaScript技術JavaScript
- Hardhat 開發框架 - Solidity開發教程連載框架Solid
- kendo ui:開源的html5開發框架UIHTML框架
- 阿里開源HTML5小遊戲開發框架Hilo實戰教程阿里HTML遊戲開發框架
- 下一代基於Koa的NodeJS全棧開發框架NodeJS全棧框架
- Thinkphp5開發的線上教程網PHP
- 用於Web開發的5種機器學習框架Web機器學習框架
- 重視B/S架構系統的發展和開發設計理念架構
- Echo指南(一) (轉)
- B/S與C/S的區別
- C/S和B/S
- B/S模式安全性探討 (轉)模式
- 最火的前端開發框架Bootstrap使用教程學習!前端框架boot
- HTML5 遊戲開發基礎的教程HTML遊戲開發
- S2B2C社交電商系統怎麼開發?
- NotaddBeta2fix1,基於Laravel的下一代PHP開發框架LaravelPHP框架
- 搭建雲端計算開發框架(轉)框架
- C/S系統快速開發框架(C#+Winform+SQL)框架C#ORMSQL
- 加速Web開發的9款知名HTML5框架WebHTML框架
- [開發教程]第5講:Bootstrap佈局boot
- HTML5原生WebGL開發系列教程HTMLWeb
- echo二次開發 ecshop 函式列表函式
- C/S,B/S的應用的區別
- SAP UI5框架自學教程UI框架