重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
使用JPanel.getComponents()方法,可以JPanel上的组件的数组,然后再对组件操作就可以了,运行如下程序会看到效果。
10年积累的网站设计制作、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有新邱免费网站建设让你可以放心的选择与我们合作。
import java.awt.*;
import javax.swing.*;
public class GetComponentsTest extends JFrame {
private Container buttonpanel;
public GetComponentsTest() {
super("GetcomponetsTest");
String[] button = { "按钮A", "按钮B", "按钮C", "按钮D", "按钮E", "按钮F" };
buttonpanel = getContentPane();
buttonpanel.setLayout(new GridLayout(1, 6));
for (int x = 0; x 6; x++) {
buttonpanel.add(new JButton(button[x]));
}
setSize(640, 60);
setVisible(true);
}
public static void main(String[] args) {
GetComponentsTest test = new GetComponentsTest();
Component[] com = test.getContentPane().getComponents();
for(int i=0;i6;i++){
((JButton)com[i]).setFont(new Font("隶书",Font.ITALIC,20 ));
((JButton)com[i]).setForeground(Color.RED);
}
}
}
步骤如下:
1、在web工程里面创建一个Servlet类,继承HttpServlet,重写doPost,doGet方法,在doPost方法中调用doGet方法;
2、在doGet方法中把要设置到jsp页面的值存到request中;
3、在doGet方法中添加转发到jsp页面的代码;
4、在jsp页面中使用jstl标签获取存入的值。
事例代码如下:
Servlet类:
public class DemoServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("name", "nameValue");
request.getRequestDispatcher("/demo.jsp").forward(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class Demo10 extends JFrame implements ItemListener,
KeyListener
{
String s[] = { "吉林", "辽宁", "黑龙江" };
JComboBox jb1 = new JComboBox(s);
JLabel jla = new JLabel("吉林");
JPanel panel = new JPanel();
String defaultMessage="请输入城市名";
Component cmp;
public Demo10() {
jb1.setEditable(true);
panel.add(jb1);
panel.add(jla);
this.getContentPane().add(panel);
this.setBounds(100, 100, 300, 300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
jb1.addItemListener(this);
cmp = jb1.getEditor().getEditorComponent();
cmp.addKeyListener(this);
}
public static void main(String[] args) {
new Demo10();
}
public void itemStateChanged(ItemEvent e){
jla.setText(e.getItem().toString());
}
public void keyPressed(KeyEvent e)
{
}
public void keyReleased(KeyEvent e)
{
jla.setText(jb1.getEditor().getItem().toString());
repaint();
}
public void keyTyped(KeyEvent e)
{
}
}
已经测试过了。可以实现用户在编辑item时,获取编辑后的值
大致是HtmlControl被服务器发送到页面ID不变,比如div id="a" runat="sever"/div
WebControl 被服务器发送到页面,如果在其他循环控件里,或者在用户控件中,ID会变,
用document.getElementById("%=Button1.ClientID%")
这个你多看看页面源代码,就知道什么时候会变。什么时候不会变
类似取Text需要这样写:document.getElementById("%=Button1.ClientID%").value
而不是直观意义上document.getElementById("%=Button1.ClientID%").text
这个是javascript语言,就这个语法,这个属性,就用value取值,在js中就是这样,没什么说的
如果是在.net后台,才用Button1.Text