窗体如何能整体复制呀?

myhelp_110 2005-08-05 05:01:48
窗体如何能整体复制呀?
比如两个窗体基本功能都差不多,只要改一点就行。我想复制成另一个窗体,如何做呀?
谢谢了。
...全文
333 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangxuejun 2005-08-06
  • 打赏
  • 举报
回复
保证可用的方法:

比如想把Form1窗体及相关文件都复制一份

一、在资源管理器中把Form1.*(全部以Form1为文件名的文件可能有几个不要丢,如至少还有一个.frx)都复制一份,将它们的文件名Form1全部改为Form1-1

二、用记事本打开Form1-1.frm,开头是二行内容
VERSION 5.00
Begin VB.Form Form1
将第二行的Form1改Form1-1
再向下,会有几行内容如下
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
这之后就是你在VB代码窗口中看到的全部内容了。
将第一行的Form1改为Form1-1
然后保存文件。
之后启动VB,打开源程序,添加窗体文件,选择这个Form1-1就可以了。

缪军 2005-08-06
  • 打赏
  • 举报
回复
从上面代码可以看出,我在原先设计的窗体上
修改了Caption,添加了状态条栏目,当然也可以把窗体改得
面目全非
缪军 2005-08-06
  • 打赏
  • 举报
回复
建议不要直接使用窗体,最好在模块中使用
这样就可以设计一个窗体,然后重复使用了
这要求工程从Sun Main() 启动
在Sub Main() 中启动主窗体
然后在主窗体中调用模块中的代码加载其它窗体
下面给一段模块代码:
Option Explicit
Private m_frmISB As frmISB

'*******************************************************************
'PURPOSE: 初始化
'SUPPOSE:
'EFFECT:
'INPUTS:
'RETURNS: String(a Empty String Or aSafe Err Message String)
'*******************************************************************
Public Function Init_ISB() As String
On Error GoTo ErrTrap
Init_ISB = ""


Set m_frmISB = New frmISB
With m_frmISB


.Caption = "入库单查询"
Call .StatusBar1.Panels.Add(Key:="BillRcc", Text:="入库单:0条", Style:=sbrText)
.StatusBar1.Panels("BillRcc").Width = 2000
Call .StatusBar1.Panels.Add(Key:="DetailRcc", Text:="明细:0条", Style:=sbrText)
.StatusBar1.Panels("DetailRcc").Width = 2000
Call .StatusBar1.Panels.Add(Key:="Help", Style:=sbrText)
.StatusBar1.Panels("Help").AutoSize = sbrSpring
.dtpEnd = MyApp.LoginTime
.dtpStart = MyApp.LoginTime - 180
End With


Exit Function

ErrTrap:
Init_ISB = MyApp.dfSemCreate("mdISB.Init_ISB", Err.Number, Err.Description)
On Error GoTo 0
End Function


'*******************************************************************
'PURPOSE: 主函数
'SUPPOSE:
'EFFECT:
'INPUTS:
'RETURNS: String(a Empty String Or aSafe Err Message String)
'*******************************************************************
Public Function Main_ISB() As String
On Error GoTo ErrTrap
Main_ISB = ""

'初始化---------------------
Main_ISB = mdISB.Init_ISB()
If Main_ISB <> "" Then
Exit Function
End If


'加载功能窗体---------------
m_frmISB.Show vbModal


'注销-----------------------
Main_ISB = mdISB.Temin_ISB()
If Main_ISB <> "" Then
Exit Function
End If


Exit Function

ErrTrap:
Main_ISB = MyApp.dfSemCreate("mdISB.Main_ISB", Err.Number, Err.Description)
On Error GoTo 0
End Function

'*******************************************************************
'PURPOSE: 注销
'SUPPOSE:
'EFFECT:
'INPUTS:
'RETURNS: String(a Empty String Or aSafe Err Message String)
'*******************************************************************
Public Function Temin_ISB() As String
On Error GoTo ErrTrap
Temin_ISB = ""

Set m_frmISB = Nothing


Exit Function

ErrTrap:
Temin_ISB = MyApp.dfSemCreate("mdISB.Temin_ISB", Err.Number, Err.Description)
On Error GoTo 0
End Function
缪军 2005-08-06
  • 打赏
  • 举报
回复
因为name属性,一个工程里不允许两个窗体的Name是一样的
你可以先修改那个窗体,然后选择另存为...
(这时新窗体被保存和加载,原先窗体会被排除出工程)
最后选加载已知窗体,把原先的窗体加载近来
myhelp_110 2005-08-06
  • 打赏
  • 举报
回复
方法2、退出vb,把frm文件和frx文件都复制一次,取个新名字,然后进vb,先把原来的frm改个名字,然后添加一个已经存在的frm,添加好后再把名字改了
-------------------------------------------
为什么要先把原来的frm改个名字才行呢?道理何在呀?请教。
laidon 2005-08-06
  • 打赏
  • 举报
回复
这些天在考虑一个问题,如果一个窗体在运行后如何复制自己呢?注:运行后用户可能会修改窗体上的很多内容,怎么样才能随时复制呢?
threenewbee 2005-08-06
  • 打赏
  • 举报
回复
如果常用的,建议楼主做成模板,就像VB里About Login Option Splash那样。具体看VB目录里有示范的。
province_ 2005-08-05
  • 打赏
  • 举报
回复
Right.
byeshuang 2005-08-05
  • 打赏
  • 举报
回复
差不多啦
zuoxingyu 2005-08-05
  • 打赏
  • 举报
回复
窗体如何能整体复制呀?
比如两个窗体基本功能都差不多,只要改一点就行。我想复制成另一个窗体,如何做呀?
============================================================================
答: pweixing(幸运米,幸运得米!) 说的完全正确
pweixing 2005-08-05
  • 打赏
  • 举报
回复
1、首先进入窗体设计,ctrl+a,ctrl+c,然后新建一个frm,ctrl+v,然后进入代码界面,重复。

方法2、退出vb,把frm文件和frx文件都复制一次,取个新名字,然后进vb,先把原来的frm改个名字,然后添加一个已经存在的frm,添加好后再把名字改了
UIDesigner(腾讯公司出品) 在软件设计阶段,交互设计师或者产品经理等常常需要使用一些工具(比如Visio、Axure RP、Flash或者OmniGraffle等)制作出静态稿或者原型来表达设计思想。这些工具是各有各的优势,当然也各有各的缺点啦。那么腾讯CDC是如何设计软件原型的呢?这里向大家介绍我们正在研发的原型设计利器UIDesigner。   首先,先让我们来体验一下UIDesigner制作出来的原型效果。这个原型是一个设置窗体,主要由按钮、复选框、分组框和文本框等控件构成,其中一些按钮还具有响应的动作(如打开另一个界面,关闭窗体等)。如图一所示,这是使用Firework制作出来的交互图。 图一、使用Firework制作出来的设计稿   这种交互图的特点是简单明了,能够表示出各种控件的基本属性(如文本、位置和选中状态等),但它只是一个静态的图片,不能真实表现出每个控件的响应动作,如仅看这张图,是不清楚点击代理服务器设置分组框上的“设置…”按钮会有什么响应的。   那再看看你若使用UIDesigner制作出来的效果:最终输出的是一个EXE可执行文件(见图二左上角),双击运行后就会出现一个与最终实现效果完全一致的窗体(见图二右)。另外,它还是一个具有响应动作的真实原型,例如你若点击了“设置…”按钮,那就会弹出一个新的窗体(见图三)。 图二、使用UIDesinger制作出来的原型 图三、点击“设置…”按钮后弹出的另一窗体   实际上,这个新弹出的窗体都是一个独立的原型,也是由UIDesigner制作出来的。由于它里面的控件同样可以设置下一步的响应动作,所以从总体上来看,众多原型就像一个树状结构,而其中的父节点就是图二中的设置窗体了。这种结构具有一个很大的好处:无论你完成了多个界面的原型,只需要它们之间有链接关系,最后输出的只是一个EXE可执行文件。这样,你可以很方便地与其它人员表达自己的设计思路,让沟通变得更加快捷。   接下来,我们看看这个原型是如何制作出来的。   第一步:建立空白窗体,调整它的大小、风格、标题和Icon 图四、使用UIDesigner制作原型—建立窗体   第二步:从工具箱中拖曳控件到窗体上,修改这些控件的属性(如Text等) 图五、使用UIDesigner制作原型—加入控件   由于UIDesigner具有自动对齐的功能,所以在拖动控件到窗体时就可以完成排版工作,不需要再逐个像素去调整。另外,不单单在加入控件到窗体时,在改变已存在于窗体内的控件的位置或者大小时,自动对齐功能一样会生效。这样,设计者在调整控件大小或者位置时(包括控件与控件,控件与窗体边缘等的距离等情况),工作变得很简单。 图六、使用UIDesigner制作原型—自动对齐功能   第三步:几分钟后,所有的控件都放到窗体并设置好属性了,如下图。 图七、使用UIDesigner制作原型—整体界面效果   此时,设计者就可以使用软件的导出图片或者导出原型功能分享你的设计成果了。当然,现在这种效果还只是一个没有响应动作效果的原型。接下来,我们再给“设置…”按钮加入响应动作。首先,选中“设置…”按钮,然后点击工具栏的“响应”按钮,你将会看到如图八的响应设置窗口。此时,你可以选择打开窗体、打开网页、弹出对话框、修改属性值和关闭本身窗体等五种效果,这里我们选择“打开窗体”,然后在弹出的对话框里指向弹出窗体的文件。最后,点击“完成”按钮即可。 图八、使用UIDesigner制作原型—设置控件的响应动作   到此为止,你就完成了一个与最终实现效果完全一致的高保真原型了。产品经理和开发人员等若想了解你的设计思想就不需要看着长长几页的说明文档了,而只需要运行你输出的原型文件,就可以对你的设计思路一目了然。   UIDesigner除了能让使用者能够快速地搭建起软件界面的高保真原型外,还提供了项目管理,让使用者能够方便地管理工程文件;提供了图片库和模板库功能,让使用者可以方便地重用以前的设计资源;提供了32个Windows客户端软件常用控件,满足使用者的设计需求;提供了多个属性设置入口,分别实现最常用属性设置、一般属性设置和高级属性设置功能。当然,UIDesigner不是专用来设计QQ的,其它的Windows客户端产品都在它的工作范围之内。总的来说呢,使用UIDesigner来制作原型是很高效的,而制作出来的原型也能够实现设计师、产品经理和程序开发工程师三者间的快速沟通,减少不必要的工作内耗。 ------------------------------------------------------------------ GUI_Design_Studio_3.5.94.0 在2008年,这款软件的作者从1,322位付费用户那获得了162,302美元的收入(其中仅12月份就有39,000美元),这令人鼓舞地证明了只要是提供真正价值的服务和软件,就能够创造很好的收入,即使在经济萧条的寒冬里。 GUI Design Studio是一款图形用户界面设计工具,您能用它在不需要编写任何代码或脚本的情况下快速地创建演示原型。使用标准元素绘制个人化的屏幕、窗口以及控件;将它们整合以展示操作工作流然后运行模拟程序测试您的设计。 当您需要绘制一款应用程序的外观或显示怎样将程序的各个部分连接起来时,您就可以使用GUI Design Studio来实现,如: 将产品创意文档化 制作项目提案 需求记录 创建屏幕图样 为开发人员制作详细的规格 为现有产品提出加强方案 以及更多其它用途 为用户以及股东甚至您自己制作展示文件以: 验证设计 找出替代项 评估多个使用场景 系统需求 Microsoft Windows Vista/XP/NT/2000 至少15MB的硬盘空间 推荐不少于256MB的内存 工程 将您的工作组织放到工程里。 每个工程都拥有它自己的文件夹结构。 可连接您计算机或网络上任何地方的其它库工程。 可连接到您计算机或网络上任何地方使您能够方便地获取图片以及其它文件。 创建您想要的并独立于所有工程的个人化设计文件。 创建能重复使用的设计库以及工程之间的一致性。 将图片直接从剪贴板中粘贴到工程文件夹的文件中。 屏幕设计程序 可同时打开多个设计文档并能使用分页界面在文档间快速切换。 可使用标准Windows元素创建图形用户界面(GUI)屏幕,包括框架窗口、会话、菜单、工具栏、标签、按钮、复选框、单选按钮、滚动条、滑动调节框、微调框、组合框、树列表、列表框、编辑框以及静态文本等。 通过现有元素或其它自定义控件创建自定义控制组件。 在其它设计中创建将要使用的控件设计。 以常用的文件格式添加图标与图片。 从能够显示您将获得什么的控件面板中进行拖放操作。 属性编辑程序使您能将每个元素进行自定义。 元素的自动生成功能。 您能在任何地方放置任何元素。 Edge snapping能通过“点击”对屏幕元素进行统一记录。 设计网格向您提供了简单的制作具有一致性设计布局的方法。 只需单键点击就能排列元素组。 均衡地隔开元素组。 调整元素大小以适应其它元素或测量一组其它元素。 聚焦缩小以查看细节设计或聚焦放大以浏览设计概况。使用工具栏按键或键盘或鼠标的滑动缩小放大功能聚焦增量。 使用鼠标的滚动以及滚轮功能快速浏览设计的概况。 剪切、复制与粘贴。 使用可选的canvas向导显示可用的屏幕空间。 通过文本框与书签对您的设计进行注释。 为每个设计添加说明。 选择色彩主题以避免实际功能窗口的混淆。 图标 为图标面板提供快速的访问方式。 工程间可共享常用图标。 工程也能拥有它们独享的图标集。 使用将来在实际产品开发中可能用到的标准ICO文件。 包含的Icon Express编辑程序支持16色、256色以及最大尺寸为127 x 127的真彩图标。 如果愿意同样能整合任意其它的图标编辑应用程序。 展示与原型 在可导航元素(如按键与窗口)之间创建连接以显示控制流程。 为图象添加覆盖保护以及添加其它元素以创建可导航的热点。 支持形式化与非模态的窗口并支持显示、隐藏或微调窗口,以及窗口替换以实现切换效果。 锚点使您能对窗口进行准确定位。 能立即在模拟程序中测试或展示您的设计。 添加消息框以描述可能在真实应用程序中出现的功能。 可创建多种场景,如正常条件下的场景与多个出错场景。 选择要激活的场景或让模拟程序为您选择。 更改有效的屏幕分辨率以查看您的设计如何适应不同的屏幕大小。 在没有进行脚本或代码编写的情况下,所有操作都是以图形模式完成。 ------------------------------------------------------------------ Balsamiq_Mockups_1.8.4 1. 首先安装 AdobeAIRInstaller.exe 2. 安装主程序 MockupsForDesktop.air 3. 使用 keygen 进行注册 在Balsamiq Mockups中绘制界面原型,就像在纸张和白板上手工绘画一样方便快速,而且不用担心出错,因为你完全可以进行回复/重做。在Balsamiq Mockups中设计原型比在纸张和白板可有趣多了! 丰富的控件支持 Balsamiq Mockups预先提供了丰富的控件,如浏览器窗口、媒体播放器组件、圆形图表等,让你信手拈来! 丰富的控件 方便的属性设置 当你选择一个控件时,会立刻出现该控件的属性选项,你可以随时编辑修改属性。 属性设定 无限的恢复/重做,不用担心出错,你可以无限制的进行回复和重做。 开放,可移植的数据 Balsamiq Mockups所生成的数据是易于阅读的XML格式数据,你可以进行方便的移植和重用集成。 开放的数据 多种方式的集成应用,你可以将Balsamiq Mockups集成倒Confluence, Jira, XWiki中. 集成应用 Balsamiq Mockups是一款免费的带有手绘风格的原型设计软件,可以帮助你设计桌面应用软件,Web 2.0 站点, RIA富网络应用程序, Web站点和Web应用软件。 功能和亮点: 操作方面:拖拽,控件分组,甚至元素之间的对齐都做得很到位; 预制了六十多个界面元素,从简单的输入框,下拉框,到经常用得到的导航条,日历,表格,到复杂的Tag Cloud,Cover Flow, 地图,WYSWYG的格式工具栏等,有了这些不用从头画起,其实比用白板都快; 界面元素的修改很简单,比如导航条的几个标签页的label,就是用逗号分隔的文字,下拉框的选项就是分行的文字; 使用xml语言来记录和保存界面元素和布局,从而使其能够快速的导入到你所需的任何一个项目中,或其他工具中。 可以将设计导出成PNG格式的图片; 随着使用的熟练,快捷键便派上用场,超过一半的元素均有快捷方式,这更有助于原型的快速构造,几乎几分钟便可实现一个满意的而复杂的原型设计; 跨平台,Balsamiq Mokups是用Flex和Air实现的,所以在Mac OS, Linux和Windows下都能使用; 不仅仅有桌面版本,还有能集成在Confluence,JIRA,和XWiki中的版本,使得异地在线协作更方便有效。 可以用命令行进行导出操作,这样就能让我写个脚本,从svn里checkout某个目录下的所有设计文件后,导出图片,打包后用邮件发到项目经理,工程师甚至客户那; 跨平台,Balsamiq Mokups是用Flex和Air实现的,所以在Mac OS, Linux和Windows下都能使用;不仅仅有桌面版本,还有能集成在Confluence,JIRA,和XWiki中的版本,使得异地在线协作更方便有效;据作者说,现在这款软件的设计就是用它自己来设计的,经典的“吃自己的狗粮”,这也让我对其更有信心,因为它是开发者为开发者写的软件。 还有值得一提的是Balsamiq Mokups的在GetSatisfaction上的用户支持和服务,作者Peldi对问题报告,新需求的回应很积极和及时。而且根据这个讨论上看,到月底就会有一个专门用来分享界面控件设计的社区网站了,很期待。 再要说的一点是这款软件是要付费的,79美元(也可以免费,具体如何免费,请看网站上的说明),相对于它能节省下来的时间和提高的效率,是很值得的。Peldi说在2008年,这款软件就从1,322位付费用户那获得了162,302美元的收入(其中仅12月份就有39,000美元),这令人鼓舞地证明了只要是提供真正价值的服务和软件,就能够创造很好的收入,即使在经济萧条的寒冬里。
2—1 VB6.0的集成开发环境   Visual Basic,简称VB,是当今世界上应用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。无论是开发功能强大、性能可靠的商务软件,还是编写能处理实际问题的实用小程序,VB都是最快速、最简便的方法。 在学习可视化编程语言时,通常都是从编写最简单的程序开始的,它让初学者可以体验一下到底是如何使用强大的集成开发环境编写程序的。 由“开始”,移到“Microsoft Visual Basic 6.0中文版”,再移到“Microsoft Visual Basic 6.0中文版”上,单击鼠标左键,就出现“新建工程”的对话框。   首先,让我们先启动Visual Basic 6.0。弹出“新建工程”对话框,我们选择“标准 EXE” 。单击“打开”。   这时候看到的是VB集成式开发环境,让我们先对它进行一番了解。   ·左面是VB的工具箱,    里面的各种图标是我们开发程序时经常用到的标准控件。   ·正中间是窗体编辑器,又称对象窗口。    我们程序的界面,大部分是在它上面设计的。   ·右上方是工程资源管理器,    它能让我们对整个工程进行整体性的管理。   ·右中处的是属性窗口,    陈列着程序中所涉及的各种窗体和控件的属性。   ·右下方是窗体布局区,    它能够调节程序运行时窗体在屏幕中的位置。 窗体的最上层是“VB 6.0的菜单”和“便捷工具按钮”,菜单中包含了所有的VB提供的功能的选项,而其中一些常用的功能或操作选项则被提取出来放在了“便捷工具按钮”中,通过点击这些快捷按钮可以加快程序开发的速度,下图标出了常见的工具按钮的作用。 Visual Basic采用集成开发环境,强大的集成开发环境使你几乎不用编写任何代码即可编写出完整的Windows程序来。这使我们编写windows下的应用程序变得简单起来。 启动Visual Basic 6.0后,我们可以看到VB的集成式开发环境。 VB其实很多功能和其它一些常用软件的功能都十分相似,下面我们就对每一部份进行逐步讲解。 一、功能齐全的菜单栏 菜单栏中包含了Visual Basic几乎所有的命令,其菜单项分别如下: (1)“文件”菜单:打开和保存及关闭项目,也可用于生成可执行文件,以及过的工程项目列表。 (2)“编辑”菜单:用于撤消所做的操作,执行:“查找”、“复制”、“粘贴”等编辑命令。 (3)“视图”菜单:用于在对象、代码窗口之间的切换,显示与隐藏IDE构件等命令。 (4)“工程”菜单:用于对工程添加窗体、模块、引用其他Windows对象和工具框等命令。 (5)“格式”菜单:用于对窗体控件进行排版等操作。 (6)“调试”菜单:用于查错命令。 (7)“运行”菜单:用于运行程序、设置断点和中止当前应用程序等命令。 (8)“工具”菜单:用于启动菜单编辑器和配置环境选项命令,还包含建立ActiveX构件和ActiveX控件时所需要的命令。 (9)“插入”菜单:用于启动数据管理器和外接程序管理器的命令。 (10)“窗口”菜单:用于布局窗口的命令。 二、方便快捷的工具栏 工具栏中集成了一些常用的菜单命令,用于迅速启动常用的菜单命令。工具栏包含通常的标准工具栏,还包含了VisualBasic的专业工具栏。工具栏的设置可以通过“视图”菜单中的“工具栏”子菜单中的各菜单项来完成。通过改变“视图”菜单中的各个选项可以浏览其他工具栏。 三、可视化控件工具栏 控件工具栏也称为控件工具箱,其中包含了众多的控件。当用户进行可视化设计界面时,可以将这些控件放入窗体中发挥其各自特殊的功能。在缺省情况下,VB工具箱中封装20个常用的ActiveX控件。 控件工具栏中的控件及其名称,如下图所示。   要将控件放置在窗体中,具体方法如下: (1)在工具箱中选择要添加的控件(即单击该控件) (2) 将鼠标移到窗体之中,这时鼠标变成十字形状。 ; (3) 按下鼠标左键并拖住不放,在窗体上“画”一个大小适当的矩形出来。松开鼠标后,窗体上就会出现一个和刚才所画矩形一样大小的控件。 四、常见窗口介绍 属性窗口 属性窗口即控件的各种属性的窗口。 属性窗口可以用来显示控件的各种属性,我们可以通过属性窗口对控件的属性值进行修改。属性窗口可以分为左右两个部分,左边是属性的名称,右边则是属性的值。 在属性窗口中我们可以看到“按字母序”和“按分类序”两个标签,分别代表将属性进行字母排序和按类别排序。 另外,当选择了某个属性时,在属性窗口的下方将会出现对该属性的作用或意义的相关描述。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧