如何用c语言作出有图形界面的小程序?

如何用c语言作出有图形界面的小程序?,第1张

那需要学VC。确切的说是要学MFC。

MFC编图形化程序也是很麻烦的,难学,繁琐。

其实你可以再学Java或者C#。

Java本身也不适合做图形化应用程序,但是比MFC要简单得多。

C#则是当前做图形化程序最简单高效的了,不需要编程单靠鼠标拖拽就能做出图形界面。特别是C#的WPF图形框架更是把图形化编程简化到了极限。

所以强烈建议学C#。

C#语言综合Java和C++的优点。Java和C++都源自C语言。所以学C#之前最好先学一下C++,C、C++、C#可以说是一脉相承,向下兼容的。

总之,学图形化编程比较好的顺序是:

C(结构化语言,入门)->C++(面向对象语言,铺垫) ->C# (享受快速图形化开发吧)

忘解释那几个名词了,补上:

集成开发环境:就是IDE,一类开发工具。

你的代码本来可以直接在记事本里写完,然后命令行下调用编译器编译就能执行了。

集成开发环境将代码编辑、代码编译执行、代码调试功能集成在一起(甚至集成更多功能),使开发人员的开发变得更加高效。比如Visual C++ 6.0就是一个集成开发环境,还有Eclipse、CodeBlocks、Visual Studio等都是。

/*计算器*/

import java.awt.*

import javax.swing.*

import javax.swing.border.*

import java.awt.event.*

public class Calculator implements ActionListener{

JFrame frame

JPanel panel

JTextField tfShow/*定义显示文本框*/

JButton b1[]=new JButton[10]/*数字按钮*/

JButton b2[]=new JButton[6]/* *** 作按钮*/

boolean isNumber/*判断是否输入多位数字的变量*/

double number/*存储输入数值、显示结果的变量*/

double result/*存储中间运算结果的变量*/

char operator/*存储当前 *** 作符的成员变量*/

public Calculator(){

frame=new JFrame("计算器")

frame.setSize(300,300)/*指定框架窗口的大小*/

frame.setResizable(false)/*使框架窗口不可改变大小*/

JPanel contentPane=(JPanel)frame.getContentPane()

contentPane.setBorder(new EmptyBorder(20,20,20,20))/*绘制框架的指定大小的空透明边框*/

tfShow=new JTextField("0",25)/*指定属性的文本域*/

tfShow.setHorizontalAlignment(JTextField.RIGHT)/*设置文本域中文本的对齐方式*/

isNumber=true/*初始值设置*/

number=0/*初始值设置*/

result=0/*初始值设置*/

operator=' '/*初始值设置*/

for(int i=0i<b1.lengthi++){

b1[i]=new JButton(Integer.toString(i))/*创建数字按钮*/

b1[i].setActionCommand(Integer.toString(i))

b1[i].addActionListener(this)

b1[i].setForeground(Color.blue)

}

String bs[]={"/","*","-","C","+","="}

for(int i=0i<b2.lengthi++){

b2[i]=new JButton(bs[i])/*创建 *** 作按钮*/

b2[i].setActionCommand(bs[i])

b2[i].addActionListener(this)

b2[i].setForeground(Color.red)

}

panel=new JPanel()

panel.setLayout(new GridLayout(4,5))

panel.add(b1[1])

panel.add(b1[2])

panel.add(b1[3])

panel.add(b2[0])

panel.add(b1[4])

panel.add(b1[5])

panel.add(b1[6])

panel.add(b2[1])

panel.add(b1[7])

panel.add(b1[8])

panel.add(b1[9])

panel.add(b2[2])

panel.add(b1[0])

panel.add(b2[3])

panel.add(b2[4])

panel.add(b2[5])

frame.add(tfShow,BorderLayout.NORTH)/*将文本框放置在框架上方*/

frame.add(panel,BorderLayout.CENTER)/*将装有按钮组的panel放在框架的中心*/

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)/*设置框架窗口的默认窗口关闭 *** 作*/

frame.setVisible(true)/*设置框架可见*/

}

public double getDisplay(){/*返回要显示的结果*/

return number

}

public void reDisplay(){/*刷新文本域的内容*/

tfShow.setText(""+getDisplay())

}

/*对输入数字的处理*/

public void numberProcess(int num){

if(isNumber&&num!=0){

String s1=Integer.toString(num)

String s2=Integer.toString((int)(this.number))

this.number=Double.parseDouble(s2+s1)/*对多位数字的处理*/

}else{

this.number=num

}

isNumber=true/*输入连续数字(即多位数字)时为真*/

}

public void operationProcess(char operator){/*根据输入的 *** 作符改变当前 *** 作符*/

switch(operator){

case '-':

this.operator='-'

break

case '+':

this.operator='+'

break

case '*':

this.operator='*'

break

case '/':

this.operator='/'

break

}

result=number

isNumber=false/*输入 *** 作符时表示输入连续数字的标记变量为假*/

}

public void clear(){

number=0

result=0

}

public void equal(){/*计算运算结果*/

switch(operator){

case '-':

result=result-number

break

case '+':

result=result+number

break

case '*':

result=result*number

break

case '/':

result=result/number

break

case ' ':

result=number

break

}

number=result/*把运算结果赋值给显示变量*/

isNumber=false

operator=' '

}

public static void main(String args[]){

Calculator cal=new Calculator()/*创建计算器*/

}

public void actionPerformed(ActionEvent e){

String command=e.getActionCommand()/*获取按钮激发的 *** 作事件的命令名称*/

char c=command.charAt(0)/*将按钮命令名称的第一个字符赋值给一个字符c*/

switch(c){

case '1':

case '2':

case '3':

case '4':

case '5':

case '6':

case '7':

case '8':

case '9':

case '0':

int number=Integer.parseInt(command)

numberProcess(number)/*输入数字的处理*/

break

case '+':

case '-':

case '*':

case '/':

operationProcess(c)/*算数运算符的处理*/

break

case '=':equal()break/*计算运算结果*/

case 'C':clear()break/*清零*/

}

reDisplay()/*在文本域中显示信息*/

}

}

这是我做的一个计算器:运行截图

用java编写一个图形化界面小程序,swing窗体定义4个标签对象,分别是:用户名、输入料号数量、扫描条码等。另外定义两个按钮对象(确定、取消)

上面这些你肯定会的

至于

用户点击确定按钮功能之后把以上数据(用户名、料号数量、条码、还有用户 *** 作日期)统计在excel表中

如果本地测试的话,就新建一个excel,可以搜索相关java *** 作excel的代码,有jxl和poi,

首先查找设定的excel名字,如果没有创建一个;

还可以保存到数据库,提供实时导出excel


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11149876.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存