WindowsXP采用了全新的主题管理内核,其功能非常强大,能够实现的效果非常炫目,但是居然不支持非官方的桌面主题,Plus!里那几个简单的主题不用几天就看腻味了,所以,要想使用第三方的主题,就必须通过非官方的办法来解决。一必备软件StyleXPStyleXP是一个第三方的XP桌面主题支持和管理软件,也是目前最好的。它使用的是WindowsXP的主题内核,并且强化了很多功能,可以导入、选择、更换和管理官方的和非官方的桌面主题、壁纸甚至登陆界面。该软件安装之后会在XP中添加一个后台运行的服务StyleXPService,占用1-2MB的内存,这个服务也就是能够使用第三方主题的基本。另外,它的主程序可以选择两种运行方式,一种是保持运行在系统托盘里,这种模式在系统托盘里有一个StyleXP的图标,随时可以点击调出主界面;一种是不消耗资源的方式,主程序平时不运行。建议大家选择第二种方式,因为这个主程序运行起来可不秀气,占用内存到10-20MB。实际上第二种方式也可以随时运行主程序来管理主题。StyleXP是共享软件,自带中文语言,在01L版本之后正式支持WindowsXPSP1,01P版本开始支持Windows2003。UxTdll破解版UxTdll就是XP系统主题支持的核心文件,也就是它让XP无法使用第三方主题。如果你不想安装StyleXP,那么你可以通过破解UxTdll文件来达到目的。实际上,UxTdll破解版就是推出StyleXP的TGTSoft在爱好者的强烈要求下放出来的,Microsoft好像也默认了这种行为,呵呵,真是难得。使用UxTdll破解版之后,无需任何其他的软件你就可以在XP的显示属性中管理和调用第三方的主题和风格。下载UxTdll破解版之后,先将X:\Windows\System32\UxTdll重命名,例如改成UxTbak,然后将破解版的复制过来,重新启动即可。注意,这里还牵涉到WindowsXP的系统文件保护,请参见下面的内容。以上两种解决办法只要任选其一即可,各有各的好处,大家看着办吧。笔者个人来言用的是前者,因为当StyleXP以服务运行时占用的资源非常少,2MB左右,无须修改系统文件,而且管理起主题来比Windows的显示属性方便得多,而且还可以随意更换和管理Logon界面,不需要去烦琐地替换系统文件,等等。真正说喜欢用桌面主题的话,不大可能在乎这么一点点资源的占用。二桌面主题的构成一个XP的桌面主题可以包含好几个部分,风格、壁纸、屏保、鼠标指针、系统声音事件、图标,除了风格是必须的之外,其他部分都是可选的。风格可以定义的内容是大家在Windows里所能看到的一切,例如窗口的外观、字体、颜色,按钮的外观等等等等,一个桌面主题里风格就决定了大家所看到的Windows的样子。大家可以打开X:\Windows\Resources\Themes目录,这个目录就是XP中存放桌面主题的目录。你能看到有很多heme文件,你在显示属性的“主题”列表里看到有多少个主题里就有多少个heme文件,它就是Windows主题文件,一个桌面主题的总定义文件,它的内容不多,是文本格式的,以XP的默认官方主题Luna为例,大家用任何一个文本编辑器打开Lheme,可以很直观的看到其内容。[Theme]部分是定义我的电脑、我的文档、网络邻居以及回收站这几个主要部件的图标,Lheme中MyComputer定义的图标就是X:\Windows\xe,0,也就是xe中包含的第一个图标,没有包含特定图标的主题这里一般都是这个值。这里即可以指向程序文件,也可以指向DLL文件或者图标文件。[ControlPanel\Colors]部分定义的是各个Windows部件如标题栏、窗口背景、文字等的颜色,这里定义的颜色大部分时候是无关紧要的,因为系统会优先按照色彩方案中的配色显示,这在后面的部分会讲到。[ControlPanel\Cursors]定义的就是鼠标指针了,每一行定义一个指针文件,例如Arrow定义箭头光标,Wait定义等待光标。Luna中这里是空的,代表使用Windows默认的鼠标指针,这里的定义必须是具体的ur光标文件或者ani动画光标文件。[ControlPanel\Desktop]定义桌面的显示,包括壁纸图片的位置,显示方式,以及是否激活屏保。Luna中的Wallpaper=%WinDir%web\wallpaper\Bbmp就是大家看得最多的“菜地蓝天”了:)。这里的ScreenSaveActive=X和下面的[boot]部分SCRNSAVEEXE=XXX是对应的,前者管是否允许屏保,后者是屏保的具体地址。[VisualStyles]就是最关键的部分了,这里指向的就是一个桌面主题的核心部分:sstyles可视化外观风格文件,Luna中指的就是Path=%WinDir%resources\Themes\luna\sstyles,后面会讲到。再往下走就是定义声音事件的了,和我们在控制面板→声音和音频设备→声音中设置的项目是一样的。一般来说一个完整的主题基本文件结构就是一个heme文件和一个放置风格文件等其他文件的文件夹,在[VisualStyles]部分可以找到这个文件夹的名字。了解了heme文件的结构之后,大家就完全可以按照自己的喜好编辑了,只是要确认所有文件的指向都必须是有效的,否则主题无法使用。需要说明的是,heme文件不是必须的,sstyles风格文件才是。因此,有些主题只有sstyles文件,没有heme文件,一样可以照常使用。只是在显示属性的主题列表中是看不到的,必须到“外观”中才可能看到。下面,根据[VisualStyles]中的路径我们再打开Luna文件夹,现在可以看到sstyles风格文件了。sstyles是一个桌面主题的最主要的部分,它的内容一般包含了几乎大家所有在Windows里看到的一切,包括窗口、工具栏、按钮等等的颜色、背景图案、立体效果、字体之类,它基本可以确定一个主题的效果。有兴趣的朋友可以用StyleBuilder这个也是由TGTSoft出品的专门编辑风格文件的工具打开来看看。就了解sstyles的重要作用了。这就是为什么有很多主题就只有这一个文件却能够实现非凡的效果。这里有一点很重要,就是sstyles文件只能放置在X:\Windows\Resources\Themes目录的子目录下,并且所在的子目录名称必须和本身的文件名(不包括后缀名)一致,例如Lsstyles必须放在X:\Windows\Resources\Themes\Luna下才有效,大家可以试试将目录或者文件其中一项改名,就会发现该风格已经无法正常使用了。大部分主题目录里还会有一个Shell目录,这里还是以官方主题Luna为例,和Lsstyles在一起的就有一个Shell目录,打开Shell目录能够看到三个子目录,分别是Homestead、NormalColor、Metallic,正好分别对应Luna主题中的三个色彩方案:橄榄绿、默认(蓝)、银色。三个目录每个下面都有一个dll文件。dll的作用比较简单,它定义的是资源管理器中左边的公共栏的样式,包括位图、字体和颜色配置,例如关闭和打开“详细信息”的按钮,以及大家打开音乐文件夹时文件列表右下角背景中显示的音符图案等。一般一个主题中有几个色彩方案就会有几个dll文件,每个dll的内容都是配合所针对的色彩方案的,不尽相同。和heme文件一样,Shell文件夹和dll都不是必须的,很多主题就没有这个内容。即便将已有dll删除也不会对主题产生太大的影响,只是在该色彩方案下它所定义的内容会变成系统默认的。大家完全可以尝试在一个色彩方案中用其他色彩方案的dll文件替换,甚至可以自己用ResourceHacker之类的工具自己编辑里面的位图和颜色、字体定义等,有时候可以达到意想不到的效果。三桌面主题的使用上面已经讲了主题的基本文件结构,在了解了文件结构之后再谈安装主题就容易多了。大家从网上下载的桌面主题各式各样,有的只有几百KB,有的可能有几十MB,就是因为它们所包含的内容不一样。有的只有一个sstyles风格文件,有的带了几个色彩配置文件,有的带了heme文件,有的带了鼠标指针、壁纸、声音事件等,笔者甚至见过一个包含了所有内容压缩之后都有上百MB的巨型桌面主题。下面就讲讲各种不同的主题该如何安装。给大家一个小提示,在正常的情况下heme文件和sstyles文件都是有系统默认文件关联的,也就是说双击这两种文件系统都会自动在显示属性中打开,大家可以利用这一点在安装之前先预览该主题或者风格,当然,如果主题还包扩了其他文件的话就要注意其他文件的路径是否对头了,否则是无法正常预览的。第一种情况:有heme主题文件这种情况是最容易安装的了,只要保持原主题的目录结构,将heme文件和文件夹复制到X:\Windows\Resources\Themes\目录下就完成安装了。举个最简单的例子,大家在网上下载了一个主题,假定这个主题名叫“Naco”,那么安装后应该是这样的目录结构:X:\Windows\Resources\Themes\Nheme(可无)X:\Windows\Resources\Themes\Naco\NsstylesX:\Windows\Resources\Themes\Naco\Shell\xxxx\dll(可无)复制好之后然后在桌面上点击右键,选择“属性”打开显示属性窗口。因为有heme主题文件,所以在主题列表中可以看到该主题,选择主题名称,点击应用,Windows就会自动切换到该主题的显示了。如果这个主题有多个色彩方案的话,打开“外观”,在“色彩方案”列表中可以看到可选的色彩方案,选每一项内容都将在上面的预览框中显示实际效果。第二种情况:没有heme主题文件还是这个例子,假定主题名叫“Naco”,这个主题只有一个Nsstyles风格文件和一个shell文件夹,shell文件夹下面有几套色彩方案,或者连shell文件夹都没有,那么首先请在X:\Windows\Resources\Themes目录下建一个子目录,名字一定要叫做“Naco”,前面说过了,这个目录的名称一定要和风格文件名相同,然后将Nsstyles文件和Shell目录复制到这个子目录里,目录结构是这样的:X:\Windows\Resources\Themes\Naco\NsstylesX:\Windows\Resources\Themes\Naco\Shell\xxxx\dll(可无)打开显示属性窗口。因为没有heme文件,所以在主题列表中是看不到“Naco”主题的,所以要到“外观”页去,正常的话你应该在“窗口和按钮”列表中能找到“Naco”这一项,这里实际上就是风格的列表了。选中“Naco”,如果这个风格有多个色彩方案,那么在下面的色彩方案列表中就会有多于一项内容,选每一项内容都将在上面的预览框中显示实际效果。点击右下方的应用,就能够将风格和色彩方案应用到当前的Windows了。前面已经讲过了heme是总定义文件以及它的结构,所以,大家可以自己创建一个heme文件来针对没有heme文件的主题。在“外观”的“窗口和按钮”中选择没有主题文件的风格,点击应用,此时Windows将切换为新指定的风格,切换到“主题”页,此时主题列表中会显示为XXX(更改),点击“另存为”,将新的heme文件保存到X:\Windows\Resources\Themes\目录里去,当然这里你也可以保存到任何位置,只是保存到系统的目录将更加便于管理。保存之后你就已经建立好一个新的主题了,以后只要选择这个新建的主题就可以使用相应的风格。在这里有一个技巧,看过第二节就知道,heme文件里是有很多定义部分的,所以,在保存heme文件的时候会将当前系统使用的墙纸、鼠标指针、图标、屏保、声音等各种定义全部保存到新建的这个主题文件中间去,因此,大家完全可以不需要去手动编辑heme文件的各项定义,而直接利用这个技巧建立自己个性化的主题。譬如,你可以先将桌面墙纸设为自己最喜欢的图片,调出自己最喜欢的鼠标指针,使用自己最喜欢的声音事件和屏幕保护等等等等,将各个部分调整好之后,“保存为”一个新的主题文件,这样,以后只要选用这个主题文件就能够一步到位了。;)当然,必须注意的是因为在保存主题文件的时候各种资源都将使用绝对路径,例如鼠标指针和声音文件的引用位置是来自于另外一个主题的目录,因此,一旦某一个文件的实际位置发生了变动,那么再用这个主题的时候Windows就会因为找不到主题里的文件而提示出错,因此,最好的办法是建立一个不容易变动的目录放置这些需要用到的文件,然后再建立主题文件,就不容易发生错误了。四桌面主题应用的延伸:图标使用主题较多的朋友会发现很多桌面主题里面包含了Windows主题之外的内容,例如很多很漂亮的成套成套的图标,但是不管怎么切换主题总是没看到这些图标在系统中出现(除了少数几个能够在heme文件中定义的之外)。实际上,这是因为Windows主题并不支持图标主题的使用。而这些成套的图标集,一般都是要用到另外的软件来使用的。在这里,就要给大家推荐一个应用比较广泛的图标主题软件:IconPackager。现在发布的包含有图标主题的Theme中,最常见的就是IconPackager图标主题了。IconPackager是一个集图标管理、图标转换、图标主题制作为一身的强大Windows图标主题工具,从软件名称就知道,它最大的功能就是图标包的应用上。很多XP桌面主题包里所带的图标集都会加入IconPackager图标主题定义文件,能够用IconPackager打开,很方便地一次性替换所有图标。这种替换方式对系统没有任何影响,实际上只是在Windows的图标缓存中进行替换,随时可以恢复。下面就简单介绍IconPackager以及它的图标主题的用法。为了方便,下面简称IconPackager为IP。先做个名词解释[d=icl文件]IConLibrary(图标库)的简称,一种使用图标编辑软件(例如Microangelo)制作的16位WindowsDLL库文件,只不过后缀名不同而已,专用于图标的打包使用,里面除了图标什么都没有,优点是能够将大量图标压缩成一个文件便于使用和交流,而且不需要解包就可以直接使用里面的图标。WindowsXP默认就支持这种图标库格式。[/d]IP格式的图标主题有两种发布方式,第一种也是最常见的方式是图标+iptheme定义文件的形式,这种形式发布的图标主题一般都在一个单独的目录中,图标可能是一大堆ico文件,也可能是单个的icl(上面解释啦)图标库文件,还有一个最重要的iptheme文件。不得不再做一个名词解释啦iptheme是IP专用的图标主题定义文件,就像第2节里说的heme主题文件一样,也是文本格式,可以用任何文本编辑器打开,它的内容一看就懂。[SoftwareInfo]部分是IP软件的说明,不用管它,下面的[PackageInfo]就是图标内容的定义了,例如:MyComputer=%ThemeDir%ico意思是“我的电脑”的图标定义为图标主题目录下的ico文件,前面是系统中某个显示图标的位置,后面是具体定义的图标文件。也可能是:MyComputer=%ThemeDir%icl,1,这样的定义指向的就是一个icl图标库文件,在逗号后面跟的数字1就是指图标库文件中的第一个图标。如果你的系统中安装了IP,只要双击iptheme文件IP就会自动启动然后打开这个图标主题,再点击IP窗口左边的“Icons&Cursors”,就可以在右边看到该图标主题内定义的各种具体图标了,分为桌面、开始菜单、文件夹、驱动器、其他、文件类型、鼠标指针、快速启动栏等八个类,基本涵盖了Windows中所有的图标,甚至是很多第三方软件的文件格式一样找得到。对于不满意的图标,双击图标项就可以更改,或者选中图标项之后点击右边的C,找到想要的图标确认就会在IP中载入了。点击右下方的Apply即可应用当前的图标主题,稍等几秒系统的图标主题就替换完成了。所替换图标的多少由图标主题中包含的图标多少来决定,如果图标主题图标类型很全的话,基本上整个系统内的图标变得都会让你认不出来了。要注意的是在IP中图标定义是绝对路径,也就是说IP中定义好的图标一旦ico文件或者icl文件被移动了,在IP中就无效了。IP的另一种主题发布形式是单独的一个ip文件,这个文件是IP专用格式的图标压缩包,里面包括了该图标主题中的图标文件以及IP的图标主题定义文件,用其他软件是打不开的,使用起来和heme一样,只要双击就会在IP中载入,不过IP会先将这个压缩包解压到自己安装目录中的themes目录下再载入,原来的ip文件位置不会影响到图标主题的使用。另外,IP图标主题中也可以包含鼠标指针,定义方式和图标是一样的。大家找个比较完整的IP图标主题研究一下定义文件就明白了。本教程只是讲图标主题的应用,至于IP的其他功能和应用大家就可以自己研究了,总之IP是一个强大而又好用的图标工具,不过它的使用是一点都不难的。用它做一个自己的图标主题,发放给自己的朋友,保证裤裤的。一套好的桌面主题加上一套好的图标主题,绝对可以让整个系统焕然一新。五桌面主题应用的延伸:系统文件的修改有了以上四步,相信大家的Windows已经有点让人认不出来了吧,下面要讲的就是更进一步的应用:修改系统文件,把Windows变得不像Windows。其实有很多的UI是保存在一些可执行文件里的(x等),比如按钮图标、动画、菜单文字、程序和对话框的布局等等,编辑这些文件可以让你随心所欲的改变你的Windows操作界面,这并不像想象中的那么难。备份!既然是系统文件,相信大家都不敢随便删掉的,所以一定要做好备份工作,而且还应当清楚的标明该文件的地理位置。一旦修改失败,立即启动到DOS,还原备份文件。再有就是,一个好的习惯就是改完一个文件,就备份、覆盖、重启、检验,再改下一个,最忌的是改了一堆文件,同时覆盖,结果出了问题,却不知道到底是哪个文件改坏了。请记住:在编辑任何系统文件之前,备份之!ResourceHacker,相信不少人都已经知道这个优秀的免费软件了,最为让人称心的是它有完美的汉化。PEResourceEditor,同样是免费软件,而且代码公开,但可能需要两个delphi6的运行库(ar)。完全不比ResourceHacker逊色。eXeScope,共享软件,可以编辑16位的Binary文件。ResBuilder,TGTSoft(就是做StyleXP的那家)出品的一个功能强大的免费软件。其主页介绍为:"WithResBuilder,skin/logon/ResBuilderauto-converts32bitBMPstoPNGGoodforLogonUIEXEA"。另外,它还能编辑被集成到可执行文件里的ini,十分吸引人。HEX编辑器既然有UltraEdit,我就不说别的了;)文件替换我们知道,当文件被使用时它是不能被替换的,而大多关于UI的系统文件都是在启动时就被启用了的,这就为我们替换系统文件带来麻烦,下面的两个软件可以帮助我们。CopyLock,Windows9x/2k,免费软件,"isasmallprogramthatallowsthereplacementofoneormanyfilesthatarecurrentlyinuse()"Replacer,Windows2k/XP,免费软件,"isaneasytousesystemfileexchangerforXP/I"其他ResThief,免费软件,当把一个可执行或其他Binary文件拖到它上头后,它会把其中的所有资源文件展开并放到一个目录里。SmartView,免费软件,"isafreeWindowsprogramthatallowsyoutoselectadirectoryandyoucanviewallthebitmaps,metafiles,"修改介绍16位和32位文件前面提到的几个资源编辑器都能修改32位文件,但我们依然会碰到16位的文件(特别是在Windows9x系统里),这时候就只有用eXeScope了。编辑文件通常的方法,只是简单的从文件中提取资源文件(位图、动画等等)、编辑、替换到文件里即可。或是修改对话框内的布局,修改文件内的文字等等,都可以在编辑器内简单操作就可完成。位图(ico等)、动画(avi等)的编辑工具可以选用自己习惯的来。需要注意的是所修改的资源文件的文件大小、颜色索引、透明颜色的指定等等,一个比较好的方法是编辑原始的资源文件。通常的,透明颜色会是紫红色(R,G,B:255,0,255),但有时是在位图的背景色里。经常会碰到一个位图文件里包含了几个不同功能的按钮的图,而且在另外的图里可能还有对应的鼠标悬停和鼠标按下的图,一个较好的方法是编辑原图。对于XP,我们会看到有不少位图是有Alpha效果的(如:explorer的工具栏内的按钮),一个有效的办法是当用资源编辑器提取文件后,立刻改名为png(原来为bmp),然后用photoshop之类的软件编辑保存,再用MsPaint打开并另存为bmp即可。(注:此法未经本人测试)dll文件内的HTML编辑!除了位图、对话框等,还有一些东西是以HTML保存的,如IE的"about"(dll,section23)和"friendlyHTTPerrormessagepages"(dll,section2110)。ResourceHacker能很方便的编辑这个的,编辑后点击"编译脚本"就可以了。但对于替换HTML里引用的if/jpg等图,则不适于用ResourceHacker,而eXeScope则能胜任愉快。另外,你完全可以用if动画来替换任何if。相关下载:(点击)StyleXPUxTdll破解版IconPackagerResourceHackerUltraEditResBuilderCopyLockeXeScope
一个小的文本编辑器:import ActionListener;import EventListener;import *;import *;import *;import *;import *;import *;public class MiniEdit extends JFrame implements ActionListener { /** * Method main * * * @param args * */ MenuBar menuBar = new MenuBar(); Menu file = new Menu("File"), edit = new Menu("Edit"), help = new Menu("Help"); MenuItem[] menuItem ={ new MenuItem("New"), new MenuItem("Open"), new MenuItem("Save"), new MenuItem("Exit"), new MenuItem("Select All"), new MenuItem("Copy"), new MenuItem("Cut"), new MenuItem("Paste"), new MenuItem("Help") }; TextArea textArea = new TextArea(); String fileName = "NoName"; Toolkit toolKit = TDefaultToolkit(); Clipboard clipboard = toolKSystemClipboard(); //opne and close message dialogs private FileDialog openFileDialog = new FileDialog(this,"Open File",FileDLOAD); private FileDialog saveFileDialog = new FileDialog(this,"Save File",FileDSAVE); public static void main(String[] args) { // TODO: Add your code here MiniEdit MyEdit = new MiniEdit(); MyEshow(); } /** * Method MiniEdit * * */ public MiniEdit() { // TODO: Add your code here setTitle("MiniEdit"); setFont(new Font("Times New Roman",FPLAIN,15)); setBackground(Cblue); setSize(500,500); setMenuBar(menuBar); menuBadd(file); menuBadd(edit); menuBadd(help); for(int i=0;i<4;i++) { add(menuItem[i]); add(menuItem[i+4]); } add(menuItem[8]); add(textArea); addWindowListener(new WindowAdapter(){//关闭窗口的事件监听 public void windowClosing(WindowEvent e){ Window()dispose(); Sxit(0); } }); //add actionListener for(int i=0;i 如果是基于字符界面的话,给你个思路1、整个程序的逻辑是一个循环while(0){捕获键盘输入根据输入确定执行的功能:1、功能操作2、编辑输入或修改操作刷新显示缓冲区的内容}2、键盘输入包括字符、功能键(Fx、del、bk等等)、方向键3、缓冲区是一个动态链表,链表的每个元素是一个字符串,表示是屏幕上一行的内容,可以根据要求限制长度或者调整显示方式 Dim gaibian As BooleanDim shijian As StringPrivate Sub baocun_Click()CommonDCancelError = TrueCommonDFilter = "文本文档(*xt)|*xt"CommonDDialogTitle = "保存"On Error GoTo CancelCommonDShowSaveOpen CommonDFileName For Output As #1Print #1, TTextClose #1Cancel:End SubPrivate Sub charushijian_Click()shijian = TimeSendKeys shijianEnd SubPrivate Sub daika_Click()If gaibian = True ThenMsgBox "是否保存!"baocun_ClickEnd IfCommonDCancelError = TrueCommonDFilter = "文本文档(*xt)|*xt"On Error GoTo CancelCommonDShowOpenOpen CommonDFileName For Input As #1Do While Not EOF(1)On Error Resume NextLine Input #1, aspect$whole$ = whole$ + aspect$LoopClose #1TText = whole$Cancel:End SubPrivate Sub Form_Load()gaibian = FalseEnd SubPrivate Sub Form_Resize()TWidth = FScaleWidthTHeight = FScaleHeightEnd SubPrivate Sub Form_Unload(Cancel As Integer)Dim c As IntegerIf gaibian = True Thenc = MsgBox("文档已经改变,你是否要保存!", vbOKCancel, "提示!")If c = vbOK Thenbaocun_ClickElseEndEnd IfEnd IfEnd SubPrivate Sub fuzhi_Click()CClearCSetText TSelTextEnd SubPrivate Sub jianqie_Click()CClearCSetText TSelTextTSelText = ""End SubPrivate Sub quanxuan_Click()TSelStart = 0TSelLength = Len(TText)End SubPrivate Sub shiyongshuoming_Click()MsgBox "本程序由 海猛 制作,谢谢大家使用^_^" & vbNewLine & "作者 QQ:419317946", vbOKOnly + vbInformation, "说明"End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Const ctrl = 3gaibian = TrueEnd SubPrivate Sub tihuan_Click()Dim tidai As StringDim a As StringIf TSelText = "" Thena = MsgBox("请输入你要被替换的内容", vbOKOnly, "提示")Elsetidai = InputBox("请输入你要替换的内容", "替换")TSelText = tidaiEnd IfEnd SubPrivate Sub tuichu_Click()EndEnd SubPrivate Sub xinjian_Click()TText = ""FileName = "未命名"FCaption = FileNameEnd SubPrivate Sub zhantie_Click()TSelText = CGetTextEnd SubPrivate Sub chazhao_Click()Dim search As StringDim inwhere As Integersearch = InputBox("请输入你要查的内容", "查找")inwhere = InStr(TText, search)If inwhere > 0 ThenTSelStart = inwhere - 1TSelLength = Len(search)ElseMsgBox "没有找到你要找的内容"End IfEnd Sub 1、python源代码可以在Windows记事本中编辑新建一个记事本文件写入python程序,然后将文本文件的后缀名改为py即可。2、在python自带idle中编辑源代码在python自带idle界面点击file-new file新建一个python文件,然后即可编辑python源程序3、使用常见的编辑器如Sublime Text、VS Code、PyCharm等编辑python源文件。更多Python知识请关注Python自学网 Python文本编辑器就是能够用来编辑Python代码的文本编辑器。在Python的交互式命令行写程序,优点是一下就能得到结果,而坏处就是没办法保存,如果下次想要继续运行的话,需要再次敲打一遍。所以实际的开发过程中,我们总是使用一个本文编辑器来编写代码,写完之后将它保存为一个文件,这样程序就可以反复使用了。Python常见文本编辑器推荐:第一个是sublime Text,免费使用,但是不付费会弹出提示框,且需要每次手动保存文件,汉化或热更需要下载插件才可以;第二个是Notepad++,免费使用,有中文界面;当然你也可以使用webstorm,可以自动保存文件,但是占用内存比较大。 编程 这是每个游戏编程FAQ里都有的问题。这个问题每星期都会在游戏开发论坛上被问上好几次。这是个很好的问题,但是,没人能给出简单的答案。在某些应用程序中,总有一些计算机语言优于其他语言。下面是几种用于编写游戏的主要编程语言的介绍及其优缺点。希望这篇文章能帮助你做出决定。 1、C语言 如果说FORTRAN和COBOL是第一代高级编译语言,那么C语言就是它们的孙子辈。C语言是Dennis Ritchie在七十年代创建的,它功能更强大且与ALGOL保持更连续的继承性,而ALGOL则是COBOL和FORTRAN的结构化继承者。C语言被设计成一个比它的前辈更精巧、更简单的版本,它适于编写系统级的程序,比如操作系统。在此之前,操作系统是使用汇编语言编写的,而且不可移植。C语言是第一个使得系统级代码移植成为可能的编程语言。 C语言支持结构化编程,也就是说C的程序被编写成一些分离的函数呼叫(调用)的集合,这些呼叫是自上而下运行,而不像一个单独的集成块的代码使用GOTO语句控制流程。因此,C程序比起集成性的FORTRAN及COBOL的“空心粉式代码”代码要简单得多。事实上,C仍然具有GOTO语句,不过它的功能被限制了,仅当结构化方案非常复杂时才建议使用。 正由于它的系统编程根源,将C和汇编语言进行结合是相当容易的。函数调用接口非常简单,而且汇编语言指令还能内嵌到C代码中,所以,不需要连接独立的汇编模块。 优点:有益于编写小而快的程序。很容易与汇编语言结合。具有很高的标准化,因此其他平台上的各版本非常相似。 缺点:不容易支持面向对象技术。语法有时会非常难以理解,并造成滥用。 移植性:C语言的核心以及ANSI函数调用都具有移植性,但仅限于流程控制、内存管理和简单的文件处理。其他的东西都跟平台有关。比如说,为Windows和Mac开发可移植的程序,用户界面部分就需要用到与系统相关的函数调用。这一般意味着你必须写两次用户界面代码,不过还好有一些库可以减轻工作量。 用C语言编写的游戏:非常非常多。 资料:C语言的经典著作是《The C Programming Language》,它经过多次修改,已经扩展到最初的三倍大,但它仍然是介绍C的优秀书本。一本极好的教程是《The Waite Group's C Primer Plus》。 2、C++ C++语言是具有面向对象特性的C语言的继承者。面向对象编程,或称OOP是结构化编程的下一步。OO程序由对象组成,其中的对象是数据和函数离散集合。有许多可用的对象库存在,这使得编程简单得只需要将一些程序“建筑材料”堆在一起(至少理论上是这样)。比如说,有很多的GUI和数据库的库实现为对象的集合。 C++总是辩论的主题,尤其是在游戏开发论坛里。有几项C++的功能,比如虚拟函数,为函数呼叫的决策制定增加了一个额外层次,批评家很快指出C++程序将变得比相同功能的C程序来得大和慢。C++的拥护者则认为,用C写出与虚拟函数等价的代码同样会增加开支。这将是一个还在进行,而且不可能很快得出结论的争论。 我认为,C++的额外开支只是使用更好的语言的小付出。同样的争论发生在六十年代高级程序语言如COBOL和FORTRAN开始取代汇编成为语言所选的时候。批评家正确的指出使用高级语言编写的程序天生就比手写的汇编语言来得慢,而且必然如此。而高级语言支持者认为这么点小小的性能损失是值得的,因为COBOL和FORTRAN程序更容易编写和维护。 优点:组织大型程序时比C语言好得多。很好的支持面向对象机制。通用数据结构,如链表和可增长的阵列组成的库减轻了由于处理低层细节的负担。 缺点:非常大而复杂。与C语言一样存在语法滥用问题。比C慢。大多数编译器没有把整个语言正确的实现。 移植性:比C语言好多了,但依然不是很乐观。因为它具有与C语言相同的缺点,大多数可移植性用户界面库都使用C++对象实现。 使用C++编写的游戏:非常非常多。大多数的商业游戏是使用C或C++编写的。 资料:最新版的《The C++ Programming Language》非常好。作为教程,有两个阵营,一个假定你知道C,另外一个假定你不知道。到目前为止,最好的C++教程是《Who's Afraid of C++》,如果你已经熟知C,那么试一下《Teach Yourself C++》。 3、我该学习C++或是该从C开始 我不喜欢这种说法,但它是继“我该使用哪门语言”之后最经常被问及的问题。很不幸,不存在标准答案。你可以自学C并使用它来写程序,从而节省一大堆的时间,不过使用这种方法有两个弊端: 你将错过那些面向对象的知识,因为它可能在你的游戏中使得数据建模更有效率的东西。 最大的商业游戏,包括第一人称射击游戏很多并没有使用C++。但是,这些程序的作者即使使用老的C的格式,他们通常坚持使用面向对象编程技术。如果你只想学C,至少要自学OO(面向对象)编程技术。OO是仿真(游戏)的完美方法,如果你不学习OO,你将不得不“辛苦”的工作。 4、汇编语言 显然,汇编是第一个计算机语言。汇编语言实际上是你计算机处理器实际运行的指令的命令形式表示法。这意味着你将与处理器的底层打交道,比如寄存器和堆栈。如果你要找的是类英语且有相关的自我说明的语言,这不是你想要的。 确切的说,任何你能在其他语言里做到的事情,汇编都能做,只是不那么简单 — 这是当然,就像说你既可以开车到某个地方,也可以走路去,只是难易之分。话虽不错,但是新技术让东西变得更易于使用。 总的来说,汇编语言不会在游戏中单独应用。游戏使用汇编主要是使用它那些能提高性能的零零碎碎的部分。比如说,毁灭战士整体使用C来编写,有几段绘图程序使用汇编。这些程序每秒钟要调用数千次,因此,尽可能的简洁将有助于提高游戏的性能。而从C里调用汇编写的函数是相当简单的,因此同时使用两种语言不成问题。 特别注意:语言的名字叫“汇编”。把汇编语言翻译成真实的机器码的工具叫“汇编程序”。把这门语言叫做“汇编程序”这种用词不当相当普遍,因此,请从这门语言的正确称呼作为起点出发。 优点:最小、最快的语言。汇编高手能编写出比任何其他语言能实现的快得多的程序。你将是利用处理器最新功能的第一人,因为你能直接使用它们。 缺点:难学、语法晦涩、坚持效率,造成大量额外代码 — 不适于心脏虚弱者。 移植性:接近零。因为这门语言是为一种单独的处理器设计的,根本没移植性可言。如果使用了某个特殊处理器的扩展功能,你的代码甚至无法移植到其他同类型的处理器上(比如,AMD的3DNow指令是无法移植到其它奔腾系列的处理器上的)。 使用汇编编写的游戏:我不知道有什么商业游戏是完全用汇编开发的。不过有些游戏使用汇编完成多数对时间要求苛刻的部分。 资料:如果你正在找一门汇编语言的文档,你主要要找芯片的文档。网络上如Intel、AMD、Motorola等有一些关于它们的处理器的资料。对于书籍而言,《Assembly Language: Step-By-Step》是很值得学习的。 5、Pascal语言 Pascal语言是由Nicolas Wirth在七十年代早期设计的,因为他对于FORTRAN和COBOL没有强制训练学生的结构化编程感到很失望,“空心粉式代码”变成了规范,而当时的语言又不反对它。Pascal被设计来强行使用结构化编程。最初的Pascal被严格设计成教学之用,最终,大量的拥护者促使它闯入了商业编程中。当Borland发布IBM PC上的 Turbo Pascal时,Pascal辉煌一时。集成的编辑器,闪电般的编译器加上低廉的价格使之变得不可抵抗,Pascal编程了为MS-DOS编写小程序的首选语言。 然而时日不久,C编译器变得更快,并具有优秀的内置编辑器和调试器。Pascal在1990年Windows开始流行时走到了尽头,Borland放弃了Pascal而把目光转向了为Windows 编写程序的C++。Turbo Pascal很快被人遗忘。 最后,在1996年,Borland发布了它的“Visual Basic杀手”— Delphi。它是一种快速的带华丽用户界面的 Pascal编译器。由于不懈努力,它很快赢得了一大群爱好者。 基本上,Pascal比C简单。虽然语法类似,它缺乏很多C有的简洁操作符。这既是好事又是坏事。虽然很难写出难以理解的“聪明”代码,它同时也使得一些低级操作,如位操作变得困难起来。 优点:易学、平台相关的运行(Dephi)非常好。 缺点:“世界潮流”面向对象的Pascal继承者(Modula、Oberon)尚未成功。语言标准不被编译器开发者认同。专利权。 移植性:很差。语言的功能由于平台的转变而转变,没有移植性工具包来处理平台相关的功能。 使用Pascal编写的游戏:几个。DirectX的Delphi组件使得游戏场所变大了。 资料:查找跟Delphi有关的资料,请访问:Inprise Delphi page。 6、Visual Basic 哈,BASIC。回到八十年代的石器时代,它是程序初学者的第一个语言。最初的BASIC形式,虽然易于学习,却是可怕的无组织化,它义无返顾的使用了GOTO充斥的“空心粉式代码”。当回忆起BASIC的行号和GOSUB命令,没有几个人能止住眼角的泪水。 快速前进到九十年代早期,虽然不是苹果公司所希望的巨人,HyperCard仍然是一个在Windows下无法比拟的吸引人的小型编程环境。Windows下的HyperCard克隆品如ToolBook又慢又笨又昂贵。为了与HyperCard一决高下,微软取得了一个小巧的名为Thunder编程环境的许可权,并把它作为Visual Basci 0发布,其用户界面在当时非常具有新意。这门语言虽然还叫做Basic(不再是全部大写),但更加结构化了,行号也被去除。实际上,这门语言与那些内置于TRS-80、Apple II及Atari里的旧的ROM BASIC相比,更像是带Basic风格动词的Pascal。 经过六个版本,Visual Basic变得非常漂亮。用户界面发生了许多变化,但依然保留着“把代码关联到用户界面”的主旨。这使得它在与即时编译结合时变成了一个快速原型的优异环境。 优点:整洁的编辑环境。易学、即时编译导致简单、迅速的原型。大量可用的插件。虽然有第三方的DirectX插件,DirectX 7已准备提供Visual Basic的支持。 缺点:程序很大,而且运行时需要几个巨大的运行时动态连接库。虽然表单型和对话框型的程序很容易完成,要编写好的图形程序却比较难。调用Windows的API程序非常笨拙,因为VB的数据结构没能很好的映射到C中。有OO功能,但却不是完全的面向对象。专利权。 移植性:非常差。因为Visual Basic是微软的产品,你自然就被局限在他们实现它的平台上。也就是说,你能得到的选择是:Windows,Windows或Widnows。当然,有一些工具能将VB程序转变成Java。 使用Visual Basic编写的游戏:一些。有很多使用VB编写的共享游戏,还有一些是商业性的。 资料:微软的VB页面有一些信息。 7、Java Java是由Sun最初设计用于嵌入程序的可移植性“小C++”。在网页上运行小程序的想法着实吸引了不少人的目光,于是,这门语言迅速崛起。事实证明,Java不仅仅适于在网页上内嵌动画 — 它是一门极好的完全的软件编程的小语言。“虚拟机”机制、垃圾回收以及没有指针等使它很容易实现不易崩溃且不会泄漏资源的可靠程序。 虽然不是C++的正式续篇,Java从C++ 中借用了大量的语法。它丢弃了很多C++的复杂功能,从而形成一门紧凑而易学的语言。不像C++,Java强制面向对象编程,要在Java里写非面向对象的程序就像要在Pascal里写“空心粉式代码”一样困难。 优点:二进制码可移植到其他平台。程序可以在网页中运行。内含的类库非常标准且极其健壮。自动分配合垃圾回收避免程序中资源泄漏。网上数量巨大的代码例程。 缺点:使用一个“虚拟机”来运行可移植的字节码而非本地机器码,程序将比真正编译器慢。有很多技术(例如“即时”编译器)很大的提高了Java的速度,不过速度永远比不过机器码方案。早期的功能,如AWT没经过慎重考虑,虽然被正式废除,但为了保持向后兼容不得不保留。越高级的技术,造成处理低级的机器功能越困难,Sun为这门语言增加新的“受祝福”功能的速度实在太慢。 移植性:最好的,但仍未达到它本应达到的水平。低级代码具有非常高的可移植性,但是,很多UI及新功能在某些平台上不稳定。 使用Java编写的游戏:网页上有大量小的Applet,但仅有一些是商业性的。有几个商业游戏使用Java作为内部脚本语言。 资料:Sun的官方Java页面有一些好的信息。IBM也有一个非常好的Java页面。JavaLobby是一个关于Java新闻的最好去处。 8、创作工具 上面所提及的编程语言涵盖了大多数的商业游戏。但是也有一个例外,这个大游戏由于它的缺席而变得突出。 “神秘岛”。没错,卖得最好的商业游戏不是使用以上任何一门语言编的,虽然有人说“神秘岛”99%是使用 3D建模工具制作的,其根本的编程逻辑是在HyperCard里完成的。 多数创作工具有点像Visual Basic,只是它们工作在更高的层次上。大多数工具使用一些拖拉式的流程图来模拟流程控制。很多内置解释的程序语言,但是这些语言都无法像上面所说的单独的语言那样健壮。 优点:快速原型 — 如果你的游戏符合工具制作的主旨,你或许能使你的游戏跑得比使用其他语言快。在很多情况下,你可以创造一个不需要任何代码的简单游戏。使用插件程序,如Shockware及IconAuthor播放器,你可以在网页上发布很多创作工具生成的程序。 缺点:专利权,至于将增加什么功能,你将受到工具制造者的支配。你必须考虑这些工具是否能满足你游戏的需要,因为有很多事情是那些创作工具无法完成的。某些工具会产生臃肿得可怕的程序。 移植性:因为创作工具是具有专利权的,你的移植性以他们提供的功能息息相关。有些系统,如Director可以在几种平台上创作和运行,有些工具则在某一平台上创作,在多种平台上运行,还有的是仅能在单一平台上创作和运行。 使用创作工具编写的游戏:“神秘岛”和其他一些同类型的探险游戏。所有的Shockwave游戏都在网络上。 资料:Director、HyperCard、SuperCard、IconAuthor、Authorware。 9、结论 你可能希望得到一个关于“我该使用哪种语言”这个问题的更标准的结论。非常不幸,没有一个对所有应用程序都最佳的解决方案。C适于快而小的程序,但不支持面向对象的编程。C++完全支持面向对象,但是非常复杂。Visual Basic与Delphi易学,但不可移植且有专利权。Java有很多简洁的功能,但是慢。创作工具可以以最快的速度产生你的程序,但是仅对某一些类型的程序起作用。最好的方法是决定你要写什么样的游戏,并选择对你的游戏支持最好的语言。“试用三十天”的做法成为工业标准是件好事情。 现在编成的语言实在是太多了 vc vb vf …… 选择一个好的途径非常重要 个人建议 从c入门 有人说难 但是不要学的很深 重在建立一种编程的思想 然后就看个人兴趣方向了 要是对病毒,攻击之类的感兴趣 就学学C++ 不然的话 java是一个很好的选择(跨平台,稳定,快速) 要是还想多学点的话 学学C# NET 还有一个很重要的就是天赋 有的人就是很轻松 有的就是很吃力 这主要看一个人的 分析能力 理解能力 逻辑思维能力 如果真的想学的话 兄弟在这里祝你成功!!! 555 多少要求哦。。。。这点没事吧 Visual Studio Code(以下简称VSCode)可以说是目前最火的代码编辑器之一了。它是微软出品的一款可扩展的轻量级开源编辑器,并且支持全平台系统。这些特性使得VSCode颇受欢迎,使其成为了一个很棒的Python开发平台。 今天,给大家推荐8款最受程序员喜爱的代码编辑器,让我们来了解一下吧! 1、Atom 特别是自带的代码缩略图和代码折叠功能,不管是用Python还是做前端都非常好用 2、查看全部[ 图文 ] 2021年1月4日- 可大多数人不了解代码编辑器有哪些,网上有很多种代码编辑器推荐,但是不 所以,今天php中文网就为初学者推荐2021最好用的8个代码编辑器。2020年1月14日- 对于新手和有经验的程序员,推荐使用的代码编辑器也均有不同。小楼总结 值得一提的是,Atom的代码自动补全功能也是一大亮点,对刚学习代码的新2017年12月24日- 那么代码编辑器有哪些呢?软件学堂为你整理了代码编辑器大全,欢迎下载 同时它也是一个非常好用的HTML网页编辑软件。它拥有完整的H 推荐理由2018年10月18日- 编辑器的改进版,同时也是免费软件。该应有程序的建立是为了处理代码以 工具推荐 | 8个好用的在线Linux终端和发行版 1 OTPUB 重阳节 | 那些改变老[ 图文 ] 2015年10月13日- 如果您还没有找到满意的代码编辑器的话,可以来了解一下小编给大家推荐 值得一提的是,完美支持 fo 文件查看),也支持自定义语言; ②、可自动八款好用的代码编辑器,程序员必备的代码编辑器。一个好的代码编辑器不仅能使代码变 对于新手和有经验的程序员,推荐使用的代码编辑器也均有不同。寻到一款满意的代码编今天菜鸟教程为大家推荐两款不错的代码编辑器,首先这两款代码编辑器不是IDE(Integrated-Development-Environment:集成开发环境集成开发环境),是个相对较轻巧的代码编2017年11月27日-jetbrains JetBrains的IDEA是Java开发最好用的IDE,没有之一。 sublimetext 相当成熟的一个代码(HTML、Prose)文本编辑器。你会喜欢上它那漂亮的用户2014年1月13日-所以说,代码编辑器好不好用将直接影响开发人员的效率,优秀的代码编辑器能够让我们的工作事半功倍。 在这篇文章中,介绍了10款功能特别的代码编辑器 如果你用过IDE的话,建议直接用IDE,原因如下:方便。python是开源的,如果碰到不懂得函数,想看API,可以快捷地查看。譬如在Pycharm中,按Ctrl+B可以查看,在eclipse中可以按F3查看该有的功能都有了,不用东找西找。例如:代码高亮、自动完成等等调试方便。IDE的推荐:推荐使用eclipse或pycharm。eclipse调试方便、输出中文没有乱码,pycharm除了输出不支持utf-8,别的都非常好。使用文本编辑器python源文件程序
编写文本编辑器程序的代码心得
程序代码编辑器