2016-01-21 63 views
-1

我有一些我制作的小程序的代码。更改选择框的坐标

import javax.swing.*; 
import java.applet.*; 
import java.awt.*; 
import java.awt.event.*; 

public class Main extends Applet { 
    Color clr; 

    public void paint(Graphics g) { 
     clr=new Color(0,68,255); 
      setBackground(clr); 
     g.setColor(new Color(255,255,255)); 
     g.drawString("Select between the numbers.",40,10); 
    } 

    public void init() { 
     char x='\n'; 
     Choice c = new Choice(); 
     c.add("1"); 
     c.add("2"); 
     c.add("3"); 
     add(c); 
    } 
} 

我想设置Choice c的坐标,但是当我给的坐标,它说,非法坐标或类似的东西......你有没有关于如何解决它的任何想法?

感谢您的任何帮助。

+3

两个问题应张贴作为两个单独的问题 – Raedwald

+0

好吧...感谢警告:) – bmw

回答

0

如果您想手动定位组件,则必须将小程序的布局设置为null,然后您可以使用setLocation()

例如,使用我之前为您制作的其他question的小程序,您可以使用此代码。

import java.applet.*; 
import java.awt.*; 
import java.awt.event.*; 

public class Test extends Applet { 
    Color clr; 
    Choice c = new Choice(); 

    public void paint(Graphics g){ 
     clr=new Color(0,68,255); 
     setBackground(clr); 
     g.setColor(new Color(255,255,255)); 
     g.drawString("Select between the numbers.",40,10); 
    } 

    public void init(){ 
     char x='\n'; 
     setLayout(null); 
     c.add("1"); 
     c.add("2"); 
     c.add("3"); 
     c.addItemListener(new CustomItemListener()); 
     c.setLocation(100,100); 
     add(c); 
    } 

    class CustomItemListener implements ItemListener 
    { 
     @Override 
     public void itemStateChanged(ItemEvent e) 
     { 
      if(e.getSource() == c) { 
       if(c.getSelectedItem().equals("1")) { 
        System.out.println("1 is selected in Choice selector c"); 
       } 
      } 
     } 
    } 
} 

这产生了一些看起来像这样的东西。

Applet with cmd open on top to show output

+0

谢谢丹现在它完美的作品:) – bmw

+0

@bmw很高兴我能帮助 – Dan