java font style_JAVA 字体的style问题?

importjava.awt.event.*;importjava.awt.*;publicclassapp29extendsFrameimplementsItemListener{staticapp29frm=newapp29();staticCheckboxchk1=newCheckbox("粗体");staticCheckbox...

import java.awt.event.*;

import java.awt.*;

public class app29 extends Frame implements ItemListener

{ static app29 frm=new app29();

static Checkbox chk1=new Checkbox("粗体");

static Checkbox chk2=new Checkbox("斜体");

static Checkbox chkg1=new Checkbox("红色");

static Checkbox chkg2=new Checkbox("蓝色");

static TextArea ta=new TextArea("选项事件类ItemEvent的使用方法",8,30);

public static void main(String args[])

{CheckboxGroup grp=new CheckboxGroup();

frm.setTitle("选项事件类处理");

frm.setLocation(200,150);

frm.setSize(250,220);

frm.setLayout(new FlowLayout(FlowLayout.LEFT));

chkg1.setCheckboxGroup(grp);

chkg2.setCheckboxGroup(grp);

chk1.addItemListener(frm);

chk2.addItemListener(frm);

chkg1.addItemListener(frm);

chkg2.addItemListener(frm);

frm.add(chk1);

frm.add(chk2);

frm.add(chkg1);

frm.add(chkg2);

frm.add(ta);

frm.setVisible(true);}

public void itemStateChanged(ItemEvent e)

{Checkbox chk=(Checkbox)e.getSource();

Font font1=ta.getFont();

int style1=font1.getStyle();

if(chk==chkg1) ta.setForeground(Color.RED);

else if(chk==chkg2) ta.setForeground(Color.BLUE);

else if((chk==chk1)&&(chk==chk2))

if(chk==chk1) style1=style1^1;

if(chk==chk2) style1=style1^2;

ta.setFont(new Font(font1.getName(),style1,font1.getSize()));

ta.append("\nstyle="+style1+" "+e.getItem()+chk.getState());

}

}

这个程序运行后点斜体,粗体,style的显示是2(为什么不是3),另外点粗体的显示是0;为什么不是1··希望帮忙解答,谢谢啊

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值