资源描述:
《带界面地消费者生产者问的题目java代码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用标准文案importjava.awt.Component;importjava.awt.Container;importjava.awt.Graphics;importjava.awt.GridLayout;importjava.awt.Image;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.BorderFactory;importjavax.swing.Icon;importjavax.swing.Image
2、Icon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JPanel;//通过本次实验,知晓两个问题:1.repaint()方法不能在主方法(主类)中使用(否则会引起背景透明问题);2.默认布局会引起组件覆盖问题。//bug1:如果非第一次执行开始模拟按钮index值为零,程序会直接退出;//bug2:当产品为零时,点恢复模拟,因为生产者较快。仓库第一格会没有产品.//bug3:生产速度必须大于等于生产
3、速度;不要问我为什么,老子也很烦恼.//如果有大神解决了BUG请回传给我谢谢publicclassconsumerandproducerextendsJFrame{privatestaticfinallongserialVersionUID=1L;publicstaticJLabeljl5=newJLabel();publicstaticintindex=0;Iconicon=newImageIcon("E://OSexperiment//22.jpg");publicstaticJLabeljl6=newJLabel("jl6");publ
4、icstaticJLabeljl8=newJLabel("jl8");publicstaticJLabeljl7=newJLabel("jl8");publicstaticJLabeljl9=newJLabel("jl9");publicstaticJLabeljl10=newJLabel("jl10");publicstaticJLabeljl11=newJLabel("jl11");publicstaticJLabeljl12=newJLabel("jl12");publicstaticJLabeljl13=newJLabel("jl13
5、");publicstaticJLabeljl14=newJLabel("jl14");publicstaticJLabeljlabel;publicstaticJLabelmark;//为生产按钮设置标记publicstaticJLabelmark1;//为消费按钮设置标记testing11test=newtesting11();testing22test2=newtesting22();Containerff=this.getContentPane();publicconsumerandproducer(Stringtitle){supe
6、r(title);ff.add(test);ff.add(test2);setBounds(200,200,900,653);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);精彩文档实用标准文案setLayout(null);jl5.setBounds(620,40,200,200);jl5.setBorder(BorderFactory.createEtchedBorder());jl5.setLayout(newGridLayout(3,3));add(jl5);jlabel=newJLabe
7、l("消息显示器");jlabel.setBounds(2,500,390,100);jlabel.setBorder(BorderFactory.createEtchedBorder());add(jlabel);mark=newJLabel("生产进行中");mark1=newJLabel("消费进行中");add(mark);add(mark1);jl6.setSize(20,20);jl7.setSize(20,20);jl8.setSize(20,20);jl9.setSize(20,20);jl10.setSize(20,20);
8、jl11.setSize(20,20);jl12.setSize(20,20);jl13.setSize(20,20);jl14.setSize(20,20);jl