通过第一课,我们创建了一个UI界面,并且在title上显示程序的名字LED Player.接下来,我们要做的是,把一些按钮之类的东西添加到这个SCREEN上(VB中叫做控件)。
首先我们确认我们需要一些可以选择的选项来让用户来选中LED需要发出的颜色,比如选择BLUE时,LED发出蓝光,RED时,发出红光等等。在这里,我们可以使用通过一下定义好的下拉菜单choicefield(比如enable/disable这样的,我们可以定义为blue/red/green/…),也可以用radiofield(单选按钮)来做,在这个例子中,我们将用radiofield来操作颜色的选取画面。
最初,我们需要写上一段文字表示下方的单选按钮是用来干吗的,于是我们添加一个RichTextField来显示“Setup blackberry 's LED color with RGB:”,目的就是告诉用户,下面是选择颜色了。
add(new RichTextField("Setup blackberry 's LED color with RGB:"));
另外,添加了一个分割线来美化UI。 @H_403_9@SeparatorField line1 = new SeparatorField(); @H_403_9@add(line1);
建立一个RadioButtonGroup,在这个组里的所有RadioButtonfield,同一时刻只有一个能被用户选中,这就避免了选了blue又选green的错误,当然这个只是一个设计思维逻辑,相信有开发经验的朋友都有的。
// -----------------radio group @H_403_9@RadioButtonGroup rbGroup = new RadioButtonGroup();
final RadioButtonField rbField1 = new RadioButtonField("Red"); @H_403_9@final RadioButtonField rbField2= new RadioButtonField("Orange"); @H_403_9@final RadioButtonField rbField3 = new RadioButtonField("Yellow"); @H_403_9@final RadioButtonField rbField4 = new RadioButtonField("Green"); @H_403_9@final RadioButtonField rbField5 = new RadioButtonField("Cyan"); @H_403_9@final RadioButtonField rbField6 = new RadioButtonField("Blue"); @H_403_9@final RadioButtonField rbField7 = new RadioButtonField("Purple"); @H_403_9@final RadioButtonField rbField8 = new RadioButtonField("White"); @H_403_9@final RadioButtonField rbField9 = new RadioButtonField("Customize"); @H_403_9@final RadioButtonField rbField10 = new RadioButtonField("Disco I"); @H_403_9@final RadioButtonField rbField11 = new RadioButtonField("Disco II"); @H_403_9@final RadioButtonField rbField12 = new RadioButtonField("None"); @H_403_9@rbGroup.add(rbField1); @H_403_9@rbGroup.add(rbField2); @H_403_9@rbGroup.add(rbField3); @H_403_9@rbGroup.add(rbField4); @H_403_9@rbGroup.add(rbField5); @H_403_9@rbGroup.add(rbField6); @H_403_9@rbGroup.add(rbField7); @H_403_9@rbGroup.add(rbField8); @H_403_9@rbGroup.add(rbField9); @H_403_9@rbGroup.add(rbField10); @H_403_9@rbGroup.add(rbField11); @H_403_9@rbGroup.add(rbField12); @H_403_9@add(rbField1); @H_403_9@add(rbField2); @H_403_9@add(rbField3); @H_403_9@add(rbField4); @H_403_9@add(rbField5); @H_403_9@add(rbField6); @H_403_9@add(rbField7); @H_403_9@add(rbField8); @H_403_9@SeparatorField line2 = new SeparatorField(); @H_403_9@add(line2); @H_403_9@add(rbField9);