VSS 详解

VSS概述
版本控制是工作组软件开发中的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和您需要比较两种版本的文件或找回早期版本的文件时,源代码的控制是非常有用的。
Visual SourceSafe 是一种源代码控制系统,它提供了完善的版本和配置管理功能,以及安全保护和跟踪检查功能。VSS通过将有关项目文档(包括文本文件、图象文件、二进制文件、声音文件、视屏文件)存入数据库进行项目研发管理工作。用户可以根据需要随时快速有效地共享文件。文件一旦被添加进VSS,它的每次改动都会被记录下来,用户可以恢复文件的早期版本,项目组的其他成员也可以看到有关文档的最新版本,并对它们进行修改,VSS也同样会将新的改动记录下来。你还会发现,用VSS来组织管理项目,使得项目组间的沟通与合作更简易而且直观。
VSS可以同Visual Basic、Visual C++、Visual J++、Visual InterDev、Visual FoxPro 开发环境以及Microsoft Office 应用程序集成在一起,提供了方便易用、面向项目的版本控制功能。Visual SourceSafe 可以处理由各种开发语言、创作工具或应用程序所创建的任何文件类型。在提倡文件再使用的今天,用户可以同时在文件和项目级进行工作。Visual SourceSafe 面向项目的特性能更有效地管理工作组应用程序开发工作中的日常任务。


1.1 VSS中的文件
当你要修改某个文档时,需要先从数据库中将它签出(check out),或者告诉VSS你要编辑该文档。VSS会将该文档的副本从数据库中拿到你的工作文件夹(working folder)中,你就可以修改你的文档了。如果其他用户再想对同一文档进行修改,VSS会产生一个信息,告诉他,该文档已被签出(check out),从而避免多人同时修改文档,以保证文档的安全性。
当你完成修改之后,需要将文档 签入(check in)VSS。这个操作从你的工作文件夹(working folder)中复制被你修改的文档,并将它放回VSS数据库,以便其他用户能够及时看到文档的改动。VSS能够保存文档的所有改动,并显示最新版本,同时早期版本也会被跟踪记录下来。VSS对反增量技术的运用,仅需要用很少的磁盘空间就能使得用户获取文档的所有版本。
如果你没有修改文档,你可以执行撤消签出(undo check out)命令,文档将被保存为被签出(check out)之前的状态。
如果你只需读取某一文档而并不需要编辑它,你可以执行取出(get)命令,将文档放入你的工作文件夹,再选择查看文档(view),来查看你的文档的最新版本。


1.2 VSS中的项目
项目(project)是指用户存储在VSS数据库中的所有文件(file)的集合。用户可以在项目之间或项目内部实现文件的添加(add)、删除(delete)、编辑(edit)、共享(share)。一个“项目(project)”在很大程度上类似于一个普通系统的的文件夹,不同的是它能更好地支持文件合并(merge)、跟踪(archive)和版本控制(version control)功能。
文件保存在VSS数据库中的项目(project)里。你无须管理存储在VSS 中的文件正本,除非你要检查或与其它拷贝进行比较。
VSS为每一位用户提供了一份备份文件放入工作文件夹(working folder),供用户对文件进行查看与编辑。尽管没有工作文件夹也可以查看文件,但要想真正实现对文档的处理,必须建立工作文件夹。


1.3 VSS的版本控制功能
VSS能够保存文件的多个版本,包括文件版本之间每一处微小的变动。版本控制有以下几方面的内容:
l 组内合作——在缺省的情况下,一般一个文件在某一时间只允许一个用户对其进行修改,这样可以防止文件意外地被其他用户改动或者覆盖。但管理员可以改动这种缺省的设置,允许文件多层签出。这种设置也能防止过多的、不必要的改动。
l 版本追踪——VSS能够对源代码和其他文件进行存储和早期版本的追踪,从而实现重建文件早期版本等有关功能。
l 跨平台开发——在多平台开发的情况下,版本追踪用于维护核心代码。
l 代码的再使用—— 追踪程序基准使得代码可重用。


1.4 文件的拆分和共享
在VSS中可以实现一个文件被多个项目共享(share)。在一个项目中对文件的改动可以自动反映到其他共享的项目中去。这正提倡了代码重用。在file菜单中的properties中,点击link,可以查看某一文件的共享情况。
拆分(branch)是将文件从原来共享的项目中分离出来的过程。它使得VSS可以实现从不同的路径追踪文件。
注:在其他版本控制系统中,分支是通过跟踪版本号来实现的。例如:版本“2.3.9.2”是版本2.3的第二个修订版本的第九个分支。而VSS通过明显不同的项目名称实现对文件分支的跟踪。
拆分文件就断开了共享连接,使得本项目中的文件与其他原来共享的项目无关。对此文件的修改将不会再反映到其他项目上。拆分是这样被建立的:两个文件以前有着共同的历史记录,从实现拆分开始,他们的历史记录将被VSS分别追踪。
拆分文件之后,link按纽将不再显示已断开的连接,但你可以用path(file菜单中的properties项)按纽浏览拆分的历史记录。
共享(share)文件就是在多个项目间建立文件的连接。拆分(branch)文件就是在项目之间建立了不同的文件路径。


1.5 工作文件夹(working folder)
VSS是存储和管理文件的工具,但是编辑和编译文件必须在VSS指定文件夹中进行。这个文件夹叫工作文件夹,它可以是现存的文件夹,也可以是VSS新建的文件夹。VSS浏览器在文件列表上方显示了文件的工作文件夹的路径。
在VSS系统中,工作文件夹才是你真正用于处理文档的地方。当你要编辑或修改某个文档时,必须对文档实施check out 操作(详见3.3.5修改和编辑文件),VSS将该文档从项目中拷贝出来,放入你的工作文件夹。当你修改完毕并check in 文件之后,VSS又将文件重新拷贝到数据库中以记录你的修改。


一旦你将文件签出,VSS就开始在你的本地机上创建并管理你的工作文件夹。
每一个用户、每一个项目或每一台微机都可以有自己的工作文件夹。如果Joe在项目$/SpreadSheet和$/WordProcessor上工作,他就有相应的2个不同的工作文件夹。如果Hanna在同样的项目上工作,对于每一个项目她又有自己的工作文件夹。
当你为某个项目设置了工作文件夹,你可以用它来放置你该项目中包括子项目再内的所


2 VSS的客户端安装


2.1 安装VSS的系统条件
l 计算机/处理器: 处理器为486DX/66MHz或以上PC机推荐Pentium或更高级的处理器。
l 内存:Windows 95或以后的版本要求16 MB RAM (推荐32 MB);Windows NT 4.0要求24 MB (推荐32 MB)。
l 硬盘:客户机:典型安装:59MB; 72 MB;安装过程:66 MB;
l 服务器:典型安装:128 MB;最大安装:141 MB;
l 附加硬盘要求:Internet Explorer:典型为43 MB,最大59 MB;MSDN:典型57MB,最大59 MB
l 驱动器:CD ROM
l 显示:VGA或更高级显示器,推荐Super VGA。
l 操作系统:Microsoft Windows 95或以后版本或者Microsoft Windows NT 4.0,NT要求Service Pack 3或更高版本(包括Service Pack 3〕
l 外围设备/其它: Microsoft Internet Explorer 4.01 Service Pack 1 (包含).


2.2 从网络安装VSS客户端
1) 打开本地计算机的“网上邻居”属性对话框;
2) 点击“配置”按纽;
3) 将“MICROSOFT网络用户”的属性设置为:登录到WINDOWS NT 域,域名为PLANNING;
4) 添加TCP/IP、NETBEUI、IPX/SPX协议;
5) 重新启动计算机,登录“planning”域;
注:管理员为每位NT用户设置的登录密码为“111”,用户在第一次登录时,计算机会提示用户修改密码。
6) 从“网上邻居”的“planning”域中查找服务器“VSSDATA”;
7) 打开共享的“VSS”文件夹并双击“NETSETUP”;
8) 按照安装程序的提示开始安装。


3 VSS的基本使用操作


3.1 登录VSS
点击VSS图标或从程序菜单中运行Visual SourceSafe 6.0,即可打开VSS浏览器。
如果用户登录的VSS密码和登录PLANNING域的密码是一致的,系统将不再提示输入进入VSS数据库的密码;如果用户为VSS设置的密码与登录PLANNING域的密码不同,系统将提示用户输入VSS的登录密码。关于如何修改VSS用户密码,详见“3.2.14修改用户密码”。


3.2 VSS浏览器


当你一打开VSS,如果你设定了密码的话,它会提示你输入密码。如果你没有设定密码,你可以直接看到浏览器。在浏览器上,你可以浏览你的数据库、查看项目列表、显示文件统计信息、执行命令对文件和项目进行操作等。浏览器的最上方的标题栏是你当前连接的数据库。VSS使用符号来提供有关文件和项目信息。
菜单栏的下面是常用工具栏,这里有许多常用命令的按纽,它可以帮你快速地执行对文件的操作。
在项目栏中,显示有项目列表,包括特殊项目的有关信息。文件栏显示了当前项目的所有文件的列表。结果栏显示当前你所执行的操作的结果。


3.3 VSS基本操作


3.3.1创建新的文件夹
1) 选中要创建新文件夹的项目(上级文件夹);
2) 在file菜单中选中creat project;
3) 写入要添加的文件夹的名称,同时也可以在comment栏中为新建的文件夹添加备注;
4) 点击OK。


3.3.2添加文件夹
1) 选中你要添加文件夹的项目(上级文件夹);
2) 在file菜单中选中add files;
3)在文件夹列表中选中要添加的文件夹;
4)点击add,同时可以在comment栏为你添加的文件夹做一个简单备注;
5)如果你要连同子文件夹一起添加,选择Recursive;
5) 点击OK,成功添加了一个带有备注的文件夹。或者点击close,退出操作,返回add files对话框,点击close。


3.3.3添加文件
3.3.2.1使用add命令添加文件
1)选中你要添加文件的文件夹;
2) 在fil菜单中选中add files;
3) 在文件列表中选中要添加的文件;如果要添加多个文件,可以使用CTRL键或SHIFT键,同时选中多个文件;
4)点击add,同时可以在comment栏为你添加的文件夹做一个简单备注;
5)点击OK。
3.3.2.2用拖动的方法添加文件/文件夹
1)打开VSS浏览器,调整其大小,使得Windows资源管理器能够显示出来;
2)打开Windows资源管理器,调整大小,使得两个浏览器可以同时显示;
3)从Windows资源管理器中选择你要添加的文件或文件夹;
4) 拖动你所选的文件或文件夹,放入VSS浏览器,文件被添加进项目,而添加的文件夹将作为项目的子项目。

3.3.3查看文件
1) 在文件列表中选中要查看的文件;
2) 在EDIT菜单中选中view,打开对话框;
3)选中view SourceSafe’s copy of this file;
4)点击OK。


3.3.4创建工作文件夹
在执行签入(check in)、签出(check out)、撤消签出(undo check out)、取出最新版本(get latest version)和文件合并(merge branches)等命令时都必须使用工作文件夹。工作文件夹可以随时设定或修改,VSS系统中可以通过两种方式设置工作文件夹。
3.3.4.1专门创建工作文件夹
1) 在VSS浏览器的文件或项目列表中选中要设置工作文件夹的文件/文件夹;
2) 在file菜单中选择set working folder,打开对话框;
3) 在资源管理列表中选择或新建文件夹;
4) 点击OK。
3.3.4.2利用check out操作设置工作文件夹
在对文件执行check out操作时,如果该文件还没有设置工作文件夹,系统会提示用户为文件创建或指定工作文件夹,用户可以根据系统的提示对文件进行工作文件夹的设置。


3.3.5修改和编辑文件
1) 在edit菜单中选中edit file,打开对话框;
2) 选择check out this file and edit it in your working folder;
3) 点击OK。
注:如果用户已经为文件设置了工作文件夹,VSS会将该文件的一个COPY放入你的工作文件夹并打开文件,让用户进行修改和编辑;如果用户还没有为文件设置工作文件夹,VSS系统会提醒用户设置工作文件夹,用户可根据系统提示,先设置工作文件夹,才可以对文件进行编辑。


3.3.6移动文件/文件夹
3.3.6.1移动文件
你只有一种方法移动文件:将文件共享(share)到项目中,再将其从原来的项目中delete或是destroy。移动文件后,历史信息仍然有效。但是你不能用move命令来移动单个的文件。
3.3.6.2移动文件夹(project)
注:要使用移动(move)命令,必须先请管理员为你设置对移动目的项目的添加(add)权限和对源项目中文件的破坏(destroy)权限。
使用移动命令你可以重新定位子文件夹,将其从一个文件夹移动到另一个文件夹中。这个命令重新定义了被移动文件夹的路径。
这个命令不可以重命名文件;你只能通过执行重命名命令来实现它。这个移动命令不会改变文件夹的内容或其中子文件夹的历史信息,它只会影响到新的和旧的上级文件夹的历史信息。
警告:当你移动一个文件夹之后,就不能再如实地重建其上级文件夹的早期版本。
移动文件夹的具体操作步骤如下:
1) 选中要移动的文件夹;
2) 在file菜单中选中move,打开对话框;
3) 在列表中选择目标文件夹;
4) 点击OK。


3.3.7共享文件/文件夹(share)
1) 在VSS浏览器中选择你要共享的目标项目。
2) 在SourceSafe菜单中选择share,打开共享对话框。
3) 在file to share列表中选择你要共享的文件,如果文件没有显示,可以旁边的项目列表中查找。
4) 点击share。
5) 点击close。


3.3.8拆分文件(branch)
3.3.8.1拆分被共享的文件
1) 在浏览器中选中你想要拆分的文件;
2) 在SourceSafe菜单中选择branch,打开拆分对话框;
3) 在comment中填写备注;
4) 点击OK。
3.3.8.2用一步操作完成文件的拆分与共享
1) 在VSS浏览器中选择你要branch/share的项目;
2) 在SourceSafe菜单中打开share对话框;
3) 在file to share列表中选择要共享的文件,如果你要的文件没有显示,在项目列表中


3.3.9删除/恢复文件或文件夹
如果想从VSS中移走某个文件,你必须首先确定是仅仅从项目中移走,还是从VSS数据库中移走。你还必须确定是要删除文件,但使其能够恢复,还是永久性地破坏它。
VSS中有以下三种途径可以实现从数据库中移走文件。
3.3.3.9.1删除(delete)
将文件从项目中移走。该文件仍然存在于你的VSS数据库和其它共享该文件的项目中,你可以恢复它。此命令同样适用于项目。
1) 选择文件或项目;
2) 选择file菜单中的delete命令;
3) 点击OK。
3.3.3.9.2破坏(destroy)
删除(delete)对话框中有永久性破坏(the Destroy Permanently)选项,你一旦选中它,文件或项目将从VSS数据库中被移走,你不能再恢复它。此外,当Destroy 和Destroy Permanently命令用于共享文件时,它只作用于当前文件夹,其它共享的文件夹仍然保留该文件,该文件依然保存在VSS数据库中。
1) 选择文件或项目;
2) 选择file菜单中的delete命令;
3) 选中 Destroy Permanently 选项;
4) 点击OK。
3.3.3.9.3清除(Purge)
这个命令将永久性地移走你已经删除的文件或项目,但没有破坏它。你可以使用这一命令清空你的文件或项目中的所有内容,但不能恢复它们。
1) 在VSS浏览器中选中项目;
2) 打开file菜单的properties对话框,按delete按纽;
3) 在列表中选择要清除的文件名;
4) 点击purge;
5) 如果要继续,在VSS给你的提示栏中点击yes。


3.3.10查看文件/文件夹的历史信息或早期版本
在历史信息中保存有每一个文件的详细信息。在history对话框中,你不仅可以浏览到文件的版本信息、备注、以及文件的相关历史记录,也能够获取文件的某个旧版本。
注:只有文件(file)可以从历史信息中check out,文件夹(project)不能从中check out。
你还可以从历史信息对话框中执行get、check out、diff、pin、unpin、roll back和reprot等操作。
要查看历史信息:
1) 在tool菜单选中show history,打开history options对话框;
2) 点击OK。


3.3.11获取文件的最新版本
1) 选择你要操作的文件,也可以是多个文件或某个项目;
2) 在SourceSafe菜单中选择get latest version;
3) 如果你事先没有设定工作文件夹,VSS会提示你是否设定一个工作文件夹,点击OK,设定一个工作文件夹;
4) 如果你已经确定了选项,VSS就会显示get latest version对话框,你就可以从当前的项目中获取文件的最新版本的备份,它放在你的工作文件夹中。


3.3.12获取文件的早期版本
1) 选中你要查看的文件;
2) 在tool菜单中选中show history,打开history option对话框;
3) 点击OK,打开history对话框;
4) 选中你要看的版本;
5) 点击get,打开get对话框;
6) 如果你事先没有设定工作文件夹,VSS会提示你是否设定一个工作文件夹,点击OK,设定一个工作文件夹;
7) 在取出对话框中点击OK,文件版本的备份就会从当前项目调入你的工作文件夹。


3.3.13修改用户密码
使用更改密码命令来设置或更改你的密码。要更改密码,必须首先知道当前的密码,如果你忘记了自己的密码,请与管理员联系。
登录的时候,VSS会提示你输入密码以确认你的身份。如果管理员为你设置的用户名与你的网络名是相同的,VSS将不会再提示你输入密码。
注:你的VSS的密码可以与你使用的操作系统的密码相同,也可以不同,它并不会替换你操作系统的密码。
如何更改密码:
1) 从tool菜单打开change password对话框;
2) 在旧密码框里键入你当前的密码;
3) 在新密码框里键入你的新密码;
注:密码可以设1到15个字符,它以*的形式显示;
4) 在确认框里再次键入新密码;
5) 点OK。


3.3.15打开/关闭数据库
如果你使用了VSS,你的文件和项目就会被存储在一个数据库中。它安全地保存你的信息并为你提供重要的历史信息和版本跟踪。要创建新的数据库,要与VSS管理员联系。
3.3.15.1打开现有的数据库
要运行你的VSS,你必须与存储你的文件的数据库连接。这一步通常由VSS自动完成,除非你要选择其他的数据库。如果数据库还没有安装,请与管理员联系。
1) 从file菜单,选择open SourceSafe database,打开对话框;
2) 从数据库列表中选择一个数据库;
3) 点击open,打开数据库。
3.3.15.2关闭数据库
你只能在一个数据库中进行工作。因此,如果要关闭一个数据库,只需打开另一个数据库即可。

转载于:https://www.cnblogs.com/yhb199/archive/2008/03/11/1101264.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/411768.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html生成1-32位随机数,如何生成一个32位的随机数 | 求索阁

CStringA CreateHex(int max){CStringA precision;precision.Format("%x",max);int size precision.GetLength();int num_align size%4; // 按多少位对齐if(num_align <4)num_align 4;else if (num_align <8) // 这里我假设最大数32位,如果…

[jQuery] 你知道自定义事件吗?jQuery里的fire函数是什么意思,什么时候用?

[jQuery] 你知道自定义事件吗&#xff1f;jQuery里的fire函数是什么意思&#xff0c;什么时候用&#xff1f; 1种是把那个bai函数放du到zhiready函数外面。 第dao2种是在ready函数zhuan里面加上window.deleteStu deleteStu; 即shu: $(function(){ function deleteStu(id){ al…

Page_Load的问题

前些天一直有个疑问&#xff1a;在Aspx的cs文件里有Page_Load函数&#xff0c;这个函数对应于Page类的Load事件&#xff0c;但是却搞不清楚Page_Load是如何绑定到Load的&#xff0c;没有类似this.Load ...这样的代码&#xff0c;没有显式的Event绑定&#xff0c;如何把Page_Loa…

「洛谷2495」「BZOJ3052」「SDOI2001」消耗战【虚树+树形动态规划】

题目大意 给你\(k\)个点&#xff0c;让这一些点和一号节点断开&#xff0c;删去某一些边&#xff0c;求最小的删去边权之和。 做题的心路历程 做了\(HG\)昨天的模拟赛&#xff0c;深深感觉到了窝的菜&#xff0c;所以为了\(A\)掉T1这一道毒瘤&#xff0c;窝就来学习一下虚树。 …

2021年安徽普通高考考试成绩查询,安徽省教育招生考试院:2021年安徽高考查分入口、查分系统...

【摘要】为了方便安徽高考考生能及时查询到2021年高考成绩&#xff0c;高考频道特别整理了的安徽省教育招生考试院2021年安徽高考成绩查询入口、查分系统&#xff0c;考生可在成绩公布时直接点击下面的链接进行查分&#xff0c;预祝大家金榜题名&#xff01;自安徽省教育招生考…

python 比赛成绩预测_大数据新研究:用六个月的跑步记录准确预测马拉松完赛成绩...

随着疫情得到控制&#xff0c;各个城市的马拉松比赛又开始相继恢复。从线上马拉松终于可以再次到各个城市不同的赛道上奔跑&#xff0c;无疑是跑者的福音。积压了大半年的情绪&#xff0c;也激发了跑者更高的训练热情&#xff0c;带来了更多跑量的累积。而准备一场马拉松比赛&a…

[jQuery] 你知道js和jQuery是什么关系吗?

[jQuery] 你知道js和jQuery是什么关系吗&#xff1f; jQuery是js的函式庫&#xff0c;並不能稱為框架。个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

求最大素数和最小素数

#include "math.h"#include "stdio.h"/**//* ′ yo D y&#xffe1; kissrat′ 2 μ aD′ a*/voidmain(){ long m,m1,i,k; for(m100000002;m<100001000;m6){ m1m-1; ksqrt(m1); for (i3;i<k;i2)if(m1%i0) br…

Python之操作HBASE数据库

目前有两个库可以操作HBASE&#xff1a;hbase-thrift 和 happybase happybase使用起来比较简单方便&#xff0c;因此重点学习该库&#xff0c;hbase-thrift只做简要介绍。 &#xff08;一&#xff09;hbase-thrift 1、使用前先添加库和依赖库&#xff1a; pip install thrift …

fla 走迷宫游戏 源码_迷宫新玩法,果断一试

迷宫&#xff0c;真的是谜一样的存在&#xff0c;大到几十岁的成年人&#xff0c;小到三岁小儿&#xff0c;都对其没有抵抗力。而迷宫君也是真给力&#xff0c;除了能给人带来愉悦感与成就感&#xff0c;还能同时锻炼专注力、空间感、思维力、视觉追踪等&#xff0c;是儿童感统…

电脑桌面老是弹出计算机,电脑桌面老是弹出游戏怎么解决

如果玩游戏时桌面始终自动弹出&#xff0c;该怎么办&#xff1f;在360游戏模式下玩就足够了如何解决游戏在计算机上弹出的问题&#xff1f; _1首先打开我们的计算机&#xff0c;在我们的计算机桌面上找到计算机管家&#xff0c;然后单击它。 2.输入后&#xff0c;单击屏幕右下方…

[jQuery] jQuery是通过哪个方法和Sizzle选择器结合的?

[jQuery] jQuery是通过哪个方法和Sizzle选择器结合的&#xff1f; 通过创建一个div元素&#xff0c;检测被传入的fn是否被当前浏览器支bai持 function assert( fn ) { var div document.createElement("div");//此处用try-catch的原因是&#xff1a;被传入的fn很有…

用OmniPeek快速定义的过滤器来抓网页提交信息

编写网络程序的人&#xff0c;经常要抓取HTTP操作过程的一些数据&#xff0c;常用的软件有HTTPSniffer、httpLook等软件&#xff0c;这些软件比常简单&#xff0c;这儿就不作介绍了。这里重点介绍一下用OmniPeek来抓取数据包。OmniPeek 是一款非常优秀的网管软件&#xff0c;功…

类的构造器-init和new

提到构造器&#xff0c;大家都会想到 __init__&#xff0c;那么__new__是什么&#xff1f;也是构造器。 init 构造器 都很熟悉了&#xff0c;直接上代码 class MyClass(object):def __init__(self):passdef m1(self):print(3)mc MyClass() mc.m1() # 3 是不是很简单 别…

c++ dll发消息到主窗口_PyQt5学习笔记(五)窗口图形绘制

PyQt5提供了绘制图形的API&#xff0c;支持绘制&#xff1a;文本各种图形&#xff08;直线&#xff0c;点&#xff0c;椭圆&#xff0c;弧&#xff0c;扇形&#xff0c;多边形等&#xff09;图像绘制图形需要一个类QPainter。基本的绘制过程&#xff1a;# 创建QPainter对象 pai…

[jQuery] 针对jQuery性能的优化方法有哪些?

[jQuery] 针对jQuery性能的优化方法有哪些&#xff1f; show slide animate 等频繁修改 dom 很耗性能&#xff0c;可采用 jquery.transit 插件等使用单个 id 或 class 选择器当然也是优化点咯&#xff0c;元素选择器是真的会卡每次调用 $() 其实都是生成一个超大的对象&#xf…

[转] SQL Server中的行列转换问题

原表结构序号性别部门工资1男部门a8002女部门b9003男部门a4004女部门d 14005男部门e12006男部门f5007女部门a 3008男部门d10009女部门d123010女部门b200011男部门c200012男部门b1200最终显示 部门名 人数 男 女 小于800元 从800至999 从1000元至1190元 大于12…

vue-cli@2的原理解析

作为一个菜鸟&#xff0c;我有一颗好奇的心&#xff0c;每当vue init 的时候&#xff0c;看到那流畅的进度和神奇的结果&#xff0c;心里都充满一窥其本质的期望…… 以下就是我不断的console&#xff0c;大致理出来的一个流程心得&#xff0c;纪录在此&#xff0c;以作备忘。 …

怎么用计算机直接截图,电脑截图快捷键怎么使用,电脑怎么快捷键截图

我们对电脑快捷键都不陌生&#xff0c;有快捷键的帮助&#xff0c;我们可以加快电脑操作速度。那不知道大家对电脑截图快捷键有了解吗&#xff1f;下面小编就跟大家分享下电脑截图快捷键的几种使用方法。1. 首先使用电脑自带的截图。我们只需要使用快捷键【PrtScn】即可。在需要…

c语言数组指定位置插入和删除_Apache POI在指定位置插入表格

接到的需求是在模板表格的指定位置再插入表格。比如在模板的${proTable}处插入表格。依赖的包org.apache.poi poi 3.15org.apache.poi poi-ooxml 3.15插入表格由于是在表格里的指定地方插入表格&#xff0c;所以要遍历表格的每个单元格&#xff0c;查找到要插入点的占位符。// …