新手怎么做Windows应用程序开发?

新手怎么做Windows应用程序开发?,第1张

新手做Windows应用程序开发,这里推荐用C#来进行开发。C#对控件有很好的封装,且开发环境是可视化图形界面,前台是类似于PPT直接拖拽控件到程序界面,然后再在后台写逻辑就可以,极大的简化了开发流程,大大降低了开发门槛,所以十分适合新手入门。

这里我就新手如何用C#去做window应用程序开发的一个过程来详细阐述一下:

IDE

个人建议微软的编程语言最好是安装VisualStudio。

.NET

库一般电脑装系统都是装好的,然后你安装VisualStudio的时候会根据你得IDE版本可能会安装更新的版本,这里需要注意一下,在开发的时候若是选择了高版本的

.NET

然后程序放在低版本可能会运行不了。个人建议用.NET3.5。

新建项目

有了IDE之后就可以开始开发程序了,我们打开VisualStudio,如果是第一次打开可能需要半个小时左右进行初始化。打开后新建项目:

如上图红色标记处可以新建项目,也可以在菜单栏文件处新建项目:

新建项目的时候注意选择:VisualC#然后选择Windows,再在右边选择Windows窗体应用程序:

改好你的项目名,点击右下角确认,这样你就已经开发好了自己的第一个window桌面程序了,这个程序是可以运行的,知识他暂时没有任何的界面和功能,他能运行且能显示界面这都是

.NET

在背后默默的给你封装好的,他帮你做了很多工作,下面你可以添加自己需要的空间和后台逻辑。

编写自己的逻辑

点击IDE左边的工具箱,然运贺仔后点击右边的小三角,选择停靠

这样所有的控件都在左边,你只需要弄清楚每个控件是干嘛的就可以了。这里我讲一下最常用的几个吧:

Button:按钮,可以点击的

Label:标签,可以显示文字

TextBox:输入框

以上三个是用的最多的,我们只需要将需要的控件点击选中并按住鼠标拖动至我们的界面上就可以了:然后在右下角你可以针对每个控件去设置他的属性和事件绑定(button的点击事件可以直接双击button控件,IDE会直接跳转至该事件的代码编写区):

前台页面设置好后旁汪,我们可以按“F7”进入后台代码页进行逻辑编写。我这里就演示一下在输入框中输入字符并且点击按钮后d出来我输入的内容的提示:

其中textbox1和button1都是系统自动给TextBox和Button空间取的名字(ID)这个在你控件多了的时候他是不能重复的,你可以在属性修改项中修改对应控件Name属性。

我们看一下运行结果:

我再输入框中输入“我爱你”点击确定后d框提示“我爱你”,简单的逻辑已经实现。一个简单的window应用程序已经开发OK,你可以将这个程序(

.exe

文件,在debug文件下)给到别人去使用是没有问题的。

当然,我在这里讲的只是C#开发Windows应用程序的简单过程,要想做出功能丰富强大的Windows应用程序还需要去了解各空控件的功能和用法,还有后台逻辑怎么去编写,数据库怎么去链接,这些都是很深很广的知识,需要你在不断的学习和使用中去提升。

希望我的回答对您有帮助,谢谢~

Windows桌面应用程序开发,首选当然是C#了,不管是开发效率还是平台兼容性来说,都是最好的,其次可以考虑Delphi开发工具,学习成本不高,效率也不错,最后实在没有编程基础的话,可以考虑使用易语言,纯粹中文编程,容易入门也易掌握,下面我分别简单介绍一下,感兴趣的朋友可以尝试一下:

01

C#

这是微软自主设计研发的拍袜一款编程语言,目前在Windows平台下有着广泛的使用率和普及率,不管是桌面开发还是动态网页开发,C#无疑是最合适也是效率最高的,只需简单拖拽控件、编辑属性,就可快速创建一个应用,支持各种主流数据库开发,只要你有一定的编程基础,学习来说,非常容易,很好入门,但在跨平台性方面有一些欠缺:

02

Delphi

这是Windows平台下一个非常著名的开发工具,在早期的Windows桌面开发中,Delphi一直占据着非常重要的位置,对于初学者使用来说,不需要掌握太多的编程基础,只需简单拖拽控件,设计属性,就可快速创建一个桌面应用,不管是开发效率,还是编译效率都非常高,而且支持数据库开发,不过随着C#的兴起,Delphi的使用范围逐渐缩小,目前主要集中在一些中小型个人应用和企业的老项目上:

03

易语言

使用易语言开发桌面应用程序,应该是下下之策了,这种方法适合于没有任何编程基础,而又对英文不熟悉的开发人员,纯粹基于中文的编程方式和思想,对于国人来说,非常容易接受和学习,可以快速开发一个桌面应用,但在目前大的环境和主流思想下,易语言的应用范围很局限,很少被企业采用,而且本身属于付费产品,难以推广:

目前,就分享这3种适合新手的Windows应用程序开发语言或工具吧,对于新手学习使用来说,完全够用了,比较流行,也是主流的是C#,只要你有一定的编程基础,熟悉一下使用过程,很快就能掌握的,当然,考虑到跨平台,可能Qt,Electron等更合适,网上也有相关资料和教程,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

Java对于服务器 个人电脑和移动设备来说是一项伟大的技术 由于需要java的跨平台的特性 因此java在服务器和移动设备方面的应用是非常成功的 但java在个人电脑应用方面的情况和在服务器及移动设备方面的应用有所不同 但是这很快就会有所改变 至少比你想象得要快 在这篇文章中 我会分析一下java在桌面环境中的应用将怎样得到提升 然后具体说一下java GUI(用户图形接口)的三个主要的工具:AWT Swing 和SWT 在下文中 我将会开发一个完整的java桌面应用程序 Java与桌面端 现在 流行的桌面平台要数Windows Mac and Linux了 但它们不是十全十美的 Windows主宰著桌面 *** 作系统的市场 其上有巨大的应用和开发群体 但它昂贵且有许多安全漏洞 Linux有着稳固的基础 它是开源的软件 比Windows更可靠 Macs非常容易 *** 作且不是黑客的目标 但与Windows和Linux比起来 Mac的硬件和软件可选的余地非常的有限 公司和个人选择他们的 *** 作系统基于许多因素 花费少且安全性高是首选的因素 这导致一些组织从Windows 系统转而选择Linux 对许多用户来说 可用性及对原有应用程序的支持是非常重要的因素 这意味着Windows 将继续享有巨大的市场 Mac有其自己忠诚的用户 这使得苹果机仍然可以存活 Linux 在桌面的流行及Mac的成功创造了多样性 这种多样性正是Java需要的 这种多样性使得Java在桌面有举足轻重的地位 跨平台的支持 Java 运行于所有相关的 *** 作系统 包括Windows Mac和Linux 对于任何组织 他想把现有的应用从一个 *** 作系统移植到另一个 *** 作系统而不用做太多的改动 那么Java正是他们首选的桌面开发平台 或许用微软的可视化工具很容易构建 NET应用 但是这将使你被绑定在了Windows平台上了 很多人也许想立刻用Linux 代替Windows 从而避免由微软件 *** 作系统的漏洞带来的问题 用户不能容忍的问题之一是当从Windows移植到Linux带来的巨大的费用 如果你的应用程序用Java构建 你就没有了这些问题 Java的图形用户界面看上去会跟你用的 *** 作系统一样 而并不需要做什么改动 假如有一天又有一种桌面 *** 作系统出现的话 java 是个安全的赌注 因为它现在能够运行在Windows和Linux 上 那么可以推测它也可以运行在将来可能出现的 *** 作系统上 这些 *** 作系统可能或迟或早地由微软 或是开源社区 或是其它的人开发出来 丰富的特征 最初 Java只有非常有限的一些特征去构建图形用户界面 思想就是用平台无关的Java应用程序接口打包不同的 *** 作系统的本地图形用户界面 称之为抽象的窗口工具 仅有普通的锋销部件如文件域 文本区 选择框 单选按钮 列表框和按钮被AWT支持 图形和图像的特性支持非常有限 也就是说 只足够构建简单的applet程序 认识到需要更高级的图形用户界面组件和图形能力 Sun公司开发了Swing Java D Java D 图像的输入/输出 Java高级图像(JAI)和很多其它的 这些中的一些窗体组件现在已经是Java 标准版(J SE)里的一部分 并且其它的一些扩展必须和你的应用程序打包在一起 例如Swing Java D 图像的输入/输出都是Java的核心API 随着Java开发工具包(JDK)和Java运行环境一起提供 让我们不要忘了J EE平台 如果你开发服务器端的应用程序并且需要丰富的图形用户界面 那么你毫无疑问应该选择Java 这允许你把服务器端的一些代码移到客户端 反之悔基老亦然 例如 一个项目可能开始是基于WEB和图形界面 在某些时候 用户可能要求图形元素不能在HTML中实现 如果你选择java做客户端应用 那么你可以重用这些当初用来做服务器端的代码 如果你用远程调用 一些类会真正地实现服务器和客户端的共享 通过页面服务器 Java桌面应用也能够和其它的Java 或非Java应碧升用程序通信 如CORBA TCP/IP 或是 HTTP Java图形界面工具 Java有三个主要的图形界面工具 AWT Swing和SWT Swing 是构建java图形界面标准的API(应用程序接口) 一些AWT类由Swing基础而来 SWT是一个非常有前途的新的窗体工具 由IBM资助 但是事实上 这三者相互补充 他们满足不同的需求 AWT 抽象窗口工具集为简单的applet程序设计 它不适宜用来构建丰富的桌面图形界面 但是从开始被介绍 它至少有一个好的思想就是布局管理 它负责为组件找到一个放置的位置 这种机制是必需的 因为GUI组件在不同的 *** 作系统中有不同的尺寸 现在 AWT扩展了组件模型和事件处理机制(由JavaBeans说明定义) 新的图形API(称为Java D) 支持剪贴板和拖拉 *** 作 打印 准入 和新的GUI工具Swing 所有这些都归到Java基础类中(JFC) Swing Swing是曾经开发的最复杂的GUI之一 它有一套完全的组件从按钮到文件域到表格 树型和文件编辑器 这些组件不依赖于 *** 作系统本地的部件 而是用原始的图形像直线 矩形 文字画出 这种画代表感观插件 它能够模仿本地的感观 Swing也有平台无关的外观称为 Metal Swing的结构由MVC模式得到启发 这里在屏幕上的视觉GUI组件和支持数据的模型对象之间有一个明显的分隔 在GUI和数据层之间的通讯基于事件 在最初的Swing版本中有许多错误并且有执行问题 这减慢了接受它的速度 Swing最大的问题是被从事于并且许多人相信它是为开发桌面应用而准备的 今天 有许多基于Swing开发的商业产品 包括大多数的Java集成开发工具 我所喜欢的集成开发工具是Jbuilder 它的速度相当的快 SWT SWT是IBM为它的Eclipse集成开发环境而开发的图形用户界面工具 SWT可以在Eclipse环境外使用 而且提供对 *** 作系统本地图形用户界面的直接访问 因此 基于SWT的Java应用程序拥有本地的图形用户界面并且可以和本地别的应用程序和部件集成在一起 假如你的桌面应用程序产生HTML报表 你想把它显示给用户看 你可以使用Swing去浏览简单的HTML文档 但这不是一个理想的的解决方案 最好是在你的应用程序里提供IE或者Mozilla浏览器引擎 SWT社区现在正在设计浏览器API 这些API可以让你产生基于IE或者Mozilla的HTML窗口 SWT现在可以在AIX HPUX Linux QNX Solaris and Windows下面运行 Mac OS X is 也在进行之中 误解与Bug 对于java/Swing一直有着误解 诸如 Java/Swing太慢了 或者是Java/Swing需要更多的内存 Swing也许在老式的奔腾的cpu而且只有 m内存运行JDK 运行起来却是很慢 但是如果在PIII级别的CPU有着 mb的内存 运行JDK 环境是足够快的 对于一个应用程序来说鼠标在 毫秒和在 毫秒的反映的区别 对于使用者来说看起来是 没什么区别的 Java在企业级的数百人 上千人同时在线的服务器表现的很好 Java在对于有限资源的移动设备上的表现也是很出色的 那为什么Java不能成为很好的桌面应用程序呢?以我的观点看 Swing的bug比其运行速度慢这问题还严重 例如 如果你用的是JDK 你将不能在表格(称为JTable)中输入%&($#!q 等这些字符 这八个字符和箭头键及Home End Pgup and Pgdn这几个键的键值是相同的 其中一个由JTable由到的类调用了KeyEvent getCharCode()方法代替KeyEvent getKeyCode() 这个bug这JDK 已经得到了纠正 你大概已经放弃过Swing 如果你是从用JDK 的Swing 你可能因为你不能在表格里输入q而恼怒 可能不幸的是你正需要用Jtable开发一个Swing应用 你将花费许多时间从sun的bug数据库中查找解决的办法 但没有发现你需要的(记住在那时Swing还是个新事物) 你将花费更多的时间去看Swing的源代码和发展中的工作区 经过了这个的经历之后 很少有人很在另一个项目里再用Swing了 你的工作区会像下面这样子 import java awt *import java awt event *import javax swing *import javax swing table *public class WorkingTable extends JTable { public static final boolean JDK = System getProperty( java version ) startsWith( )public void processKeyEvent(KeyEvent e) { if (JDK ) { char ch = e getKeyChar()if (e getID() == KeyEvent KEY_TYPED &&(( <= ch &&ch <= 40) || ch == 'q')) { int anchorRow = getSelectionModel().getAnchorSelectionIndex()int anchorColumn = getColumnModel() .getSelectionModel().getAnchorSelectionIndex()if (anchorRow != -1 &&anchorColumn != -1) { if (!isEditing()) editCellAt(anchorRow, anchorColumn)Component editorComp = getEditorComponent()if (isEditing() &&editorComp instanceof JTextField) { JTextField textField = (JTextField) editorComptextField.setText(textField.getText() + ch)return} } } } super.processKeyEvent(e)} } 不幸的是,Swing有许多像上面描述的那样的问题,一些问题很难解决,需要做大量的工作。Tw.WInGwiT.例如,Swing的打开文件和保存文件的对话框是基于称为JfileChooser的组件,它部分的执行了JDK 1.2和JDK 1.3(一些特性总是不能用的,要创建一个新的目录对大多数用户来是一个挑战)。我不知道为什么Sun需要几年的时间直到jdk1.4中才完成JfileChooser。在JDK 1.4之前,你有两种选择:用这种破烂的JfileChooser或是创建你自己的文件选择框,Borland公司在他们的JBuilder 4中做一个很好的文件打开对话框。然而,大多数的开发者用的是标准的JfileChooser,给他们的用户带来许多问题。有一件重要的事情需要注意:可以像上面描述的那个去创建工作环境,因为Swing的源代码是可以得到的。学习java源代码也能够让你成为更好的程序员并且让你理解工作在Java API的内部机制。当你开发你自己习惯的GUI组件,这点是有用 lishixinzhi/Article/program/Java/hx/201311/26851


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

原文地址: http://outofmemory.cn/yw/8245777.html

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

发表评论

登录后才能评论

评论列表(0条)

保存