barriers / 阅读 / 详情

免费QQ皮肤叫什么名?

2023-07-29 11:10:38
TAG: qq
共3条回复
okok云

QQ皮肤都是免费的

QQ皮肤,又称“qq肌肤”,是QQ外形登录模式的一种“QQ美容”虚拟表达软件手段。

怎样在QQ皮肤编辑器里增加项目:

简单地来说,QQ皮肤分三大块:在QQ皮肤目录下存放一些相关的图片(ICO格式)、图标(BMP格式)等资源;在config.xml文件中定义这些资源的属性;在VBScript文件调用这些资源并定义相关功能。可以看出,config.xml文件和VBScript文件是整个皮肤文件的核心。下面我们来认识一下这两个文件:

一、认识config.xml文件

1.面板的最小宽度、最小高度、最大宽度、最大高度

<Window minWidth="120" minHeight="240" maxWidth="1280" maxHeight="1024" clippingColor="#FF00FF" backgroundColor="#FF00FF">

其中 minWidth="120" 中的数值120就代表面板的最小宽度;

minHeight="240" 中的数值240就代表面板的最小高度;

maxWidth="1280" 中的数值1280就代表面板的最大宽度;

maxHeight="1024" 中的数值1024就代表面板的最大高度.

要调整面板的最小宽度、最小高度、最大宽度、最大高度,只需调整相应的数值即可。

网上所说的可随意调整面板大小其实就是将minWidth和minHeight的值调到最小,将maxWidth和maxHeight的值调到屏幕的最大分辨率。对一般人来说,上面的数值基本上可以做到随意调整面板大小了。

clippingColor和backgroundColor在修改皮肤时用不着,不用管它,下同。

2.按钮的属性

(这一部分主要了解按钮各个属性的含义,对按钮定义的格式先不管,后面会提到)

(1)先以“关闭”按钮为例:

<Button id="CloseButton" left="149" top="5" width="16" height="16" zIndex="6" toolTip="关闭" cursor="Hand.cur" visible="true" image="CloseButton_Normal.bmp" hoverImage="CloseButton_Hover.bmp" downImage="CloseButton_Down.bmp" horizontalAlignment="Stretch" verticalAlignment="Stretch"/>

其中

Button 是关键字;

id 指按钮的名称。每个Button id对应皮肤面板上的某一个按钮(就好比每个身份证号对应世界上的某一个人一样)。注意每个按钮的Button id是唯一的(就好比每个人的身份证号是唯一的)。

Left、top 分别指按钮到皮肤最左边和最上边的距离。这两个值具体是多少根据具体皮肤而定。如果实在不知道自己的皮肤应该取多大的值,那就先不管。

width、height 分别指按钮的宽度和高度。一般情况下,这两个值的大小与按钮对应的图标大小一致即可(例如关闭按钮所对应三个图标CloseButton_Normal.bmp、CloseButton_Hover.bmp、CloseButton_Down.bmp,这三个图标大小为16*16,故width、height的值分别为16、16))。注意,同一个按钮所对应的图标的大小要一致(例如关闭按钮所对应三个图标CloseButton_Normal.bmp、CloseButton_Hover.bmp、CloseButton_Down.bmp大小均为16*16)。

zIndex 指图层的上下顺序。zIndex的值越大,图标越靠上,靠上的会挡住靠下的(例如如果若干个不同的按钮定义在皮肤面板上的同一个位置,则zIndex值最大的按钮会显示出来,其他按钮将会被覆盖。这就叫做“狭路相逢勇者胜”,呵呵)。

toolTip 指鼠标放在按钮上时出现的提示信息。这个可以随便改(你可以把toolTip改成一些搞怪的话语,以后有人做出QQ皮肤搞怪版也说不定)。

cursor 指鼠标放在按钮上时鼠标的样式(例如当鼠标放到关闭按钮上时,就会由箭头变成一只小手),引号中是一个扩展名为.cur的鼠标样式文件。

visible 指按钮的可见性,true 表示可见,false表示不可见。

Image 、hoverImage 、downImage 、disabledImage 指按钮在不同状态下(如鼠标放在按钮上、鼠标按下按钮等等)显示的图标。

有些按钮中还有transparencyColor属性,这是透明色的定义,如果图标上有这种颜色,则处理为透明色。

horizontalAlignment和verticalAlignment在修改皮肤时用不着,不用管它,下同。

(2)再以“QQ小秘书”按钮为例:

<Button id="HostingButton" left="82" top="48" width="40" height="16" zIndex="27" toolTip="QQ小秘书" cursor="Hand.cur" visible="true">

<Icon ico="HostingButton.ico" cx="16" cy="16" horizontalAlignment="Left" verticalAlignment="Center" leftPadding="0" topPadding="0"/>

<Label labelValue="(0)" color="#071E81" hoverColor="#FFFFFF" fontFamily="MS Sans Serif" fontSize="8" fontStyle="" fontWeight="400" horizontalAlignment="Left" verticalAlignment="Center" leftPadding="18" topPadding="0"/>

</Button>

上面提到的属性这里就不再罗嗦了。

ico 指按钮所对应的图标,引号中是一个扩展名为.ico的图标文件;

cx 、cy 分别指按钮到皮肤面板最左边和最上边的距离。这两个值具体是多少根据具体皮肤而定。如果实在不知道自己的皮肤应该取多大的值,那就先不管。

leftPadding 指图标或者Label相对于按钮定义位置的水平偏移量。水平偏移量为正整数,则向右边偏移;水平偏移量为负整数,则向左边偏移;

不知道什么是“Label”?不知道什么是“按钮定义位置”?不知道什么是“水平偏移量”?不好意思,偶语文没学好,表达能力太差。下面听偶慢慢道来。

Label是指图标旁边的数字或者文字。在这里Label是指QQ小秘书图标右边的“(0)“字样。

举个例子来解释“按钮定义位置”和“水平偏移量”吧。

代码<Button id="HostingButton" left="82" top="48"……>中的(82,48)就是按钮HostingButton的按钮定义位置,其实就是就是按钮HostingButton在面板上的坐标。“按钮定义位置”是偶自己起的名字(“难怪看不懂,兄弟们,贬他!!!”“求求你们,不要打偶的脸好吗?……”)。

代码<Icon ico=…… leftPadding="0" ……/>中leftPadding="0"的含义是:按钮HostingButton的图标HostingButton.ico在按钮定义位置的基础上水平向左偏移0,偏移以后的位置就是图标HostingButton.ico在皮肤面板中的实际位置;

代码<Label labelValue…… leftPadding="18" ……/>中leftPadding="18"的含义是:按钮HostingButton的Label “(0)”在按钮定义位置的基础上水平向左偏移18,偏移以后的位置就是图标Label “(0)”在皮肤面板中的实际位置;

这里的0、18就是“水平偏移量”。

这里要把按钮HostingButton的按钮定义位置、按钮HostingButton的图标HostingButton.ico的位置、按钮HostingButton的Label “(0)”的位置区分开来。

这一段写得比较晦涩,实在看不懂就算了,不影响皮肤的修改。

topPadding 指图标或者Label相对于按钮定义位置的垂直偏移量。垂直偏移量为正整数,则向下边偏移;垂直偏移量为负整数,则向上边偏移;

labelValue 指Label的内容;

color 指Label的颜色;

hoverColor 指鼠标放在Label上时Label的颜色;

fontFamily 指Label的字体;

fontSize 指Label的字体大小;

fontStyle 指Label的字体风格;

fontWeight 指Label的字体高度。

3.按钮的定义

由2中举的两个例子可以总结出按钮的定义有以下几种形式。

(1)若按钮所对应的图标文件为bmp格式,则该按钮对应的代码形式如下:

<Button …… image="*.bmp" hoverImage="*.bmp" downImage="*.bmp" ……/>

(2)若按钮所对应的图标文件为Ico格式,并且该按钮有Label,则该按钮对应的代码形式如下:

<Button ……>

<Icon ……/>

<Label ……>

</Button>

(3)若按钮所对应的图标文件为Ico格式,并且该按钮没有Label,则该按钮对应的代码形式如下:

<Button……>

<Icon ……/>

</Button>

说明:省略号(……)中可以补充上2中提到的各种属性。

文本、图片等与按钮类似,这里不再赘述。

其实我们只要掌握到以下程度即可:

(1)给出一个按钮,能在config.xml文件中找到相应的代码;

(2)稍微了解一点按钮各个属性的含义。

出个题目考考你:如何在QQ2005正式版原版皮肤中的config.xml文件中找到TT浏览器对应的代码。

答案:

首先将鼠标放到皮肤面板中的TT浏览器的图标上,会看到TT浏览器的toolTip为“腾讯TT浏览器”;

然后用记事本打开config.xml文件,利用记事本的 “编辑”-》“查找”菜单找到“腾讯TT浏览器”所在的位置;

“腾讯TT浏览器”前后有那么多代码,到底TT浏览器对应的代码从哪里开始,又到哪里结束呢?这就要用到“按钮的定义”那一节中的内容了。将“腾讯TT浏览器”前后的代码和“按钮的定义”那一节中的三种形式一一对照,发现和形式(3)相对应。下面再确定TT浏览器对应代码段的起始点就很容易了。

TT浏览器在config.xml文件中对应的代码为

<Button id="TTButton" left="60" top="448" height = "16" width = "16" zIndex="20" visible="true" cursor="TTButton.cur" toolTip = "腾讯TT浏览器">

<Icon ico="TTButton.ico" horizontalAlignment="Left" />

</Button>

其实对config.xml文件比较了解以后你可以直接找出这段代码。

如果这道题难不住你,那么恭喜你!请继续往下看;

如果这道题做不出来,建议还是再把前面的内容看一下。

二、认识VBScript文件

相信大部分菜鸟没有VBScrip基础,因此这一部分完全可以跳过。在修改皮肤时我会尽量避开VBScript的知识,如果实在避不开,必要时会把代码的模板给出来,大家只需要修改其中的一两处就可以了。

不过还是建议大家学一点VBScrip的基础知识。毕竟,我们不仅要知其然,更要知其所以然。

关于VBScript文件,这里我只说三点:

1. 定义变量

在VBScript文件的最前面,有下面一段代码:

Dim UserNum

Dim UserStatus

Dim Path

Dim strQQMailTip

Dim ShowStatus

Dim foldbottom

Dim bMsgInside

Dim CurrentWidth

Dim CurrentHeight

Dim PlugMngHeight

Dim PlugCloseState

Dim PetState

这就是定义变量的代码。

如果需要定义自己的变量名的话,按以下格式定义就可以了:

Dim 变量名

很简单吧?

其实VBScript只有一种数据类型(比C语言简单多了),而且我们只用隐式定义变量的数据类型(就是上面这种形式)。

2.定义按钮在面板中的位置

按钮大致可以分为两大类:

一类按钮是靠左上角对齐的(即不论皮肤怎么拉伸,该按钮到皮肤面板最左边或最上边的距离始终保持不变);

一类按钮是靠右下角对齐的(即不论皮肤怎么拉伸,该按钮到皮肤面板最右边或最下边的距离始终保持不变)。

这两类按钮的位置都需要在config.xml文件中定义,但是第二类按钮还需要在VBScript文件中定义。定义格式如下:

按钮名称.left =cx - 按钮到皮肤面板最右边的距离

按钮名称.top =cy - 按钮到皮肤面板最下边的距离

在config.xml和VBScript定义了按钮的位置以后,按钮就可以在面板中显示出来,但是此时点击按钮并没有反映,因为此时按钮的功能还没有定义。

3. 定义按钮的功能函数

定义按钮的功能函数的格式如下:

Sub 函数名()

End Sub

以聊天室为例:

Sub ChatRoomButton_onClick()

Window.ExeCommand 4,1

End Sub

onClick 的意思就是当鼠标点击的时候所做的动作, 这里执行的是 Window.ExeCommand 动作。你也可以定义其他动作。

Window.ExeCommand具体含义如下:

1,1 皮肤菜单

1,2 最小化

1,3 关闭

4,1 聊天室

4,2 发送手机短信

4,3 查找

4,4 腾讯浏览器

4,5 QQ游戏

4,6 信息管理器

4,7 颜色

4,8 个人帐户

4,9 面板选择

4,10 Mail相关

50,1 显示信息

60,2 个人设置

7,1 QQ邮件

15,1 QQ小秘书

再以IP升级器为例:

sub IPButton_onClick()

tmp="showip.exe"

Set fso = CreateObject("Scripting.FileSystemObject")

If (fso.FileExists(tmp)) Then

Set objShell = CreateObject("Wscript.Shell")

objShell.Run tmp

else

msgbox "发现错误啦!" & chr(10) & "找不到QQ安装目录下的showip.exe文件",,"错误提示"

end if

End Sub

说明一点:IP升级器即使定义了功能按钮,点击的时候仍然没有反映。这是因为IP升级器调用了外部程序(showip.exe),而QQ自带的vbscript.dll文件并不支持这一点,所以要对vbscript.dll文件进行修改。这也是为什么用我修改的QQ皮肤还要覆盖原版QQ中的vbscript.dll文件的原因。

三、删除组件

对于原版皮肤或别人发布的皮肤,皮肤中的每一个组件我们不可能都使用,我们完全可以删除自己不需要的组件,DIY出完全属于自己的个性皮肤。

删除多余组件的步骤是:

第一步,用记事本打开config.xml文件,找到多余组件所对应的代码(具体怎么找,在第一部分末尾讲得很清楚,不再罗嗦),并记下该组件所对应的id;

第二步,将config.xml文件中该组件对应的代码删除,保存修改;

第三步,用记事本打开VBScript文件,以该组件的id去掉后面的Button等字样(若有的话)为关键字进行搜索,就会在VBScript文件中查找到与该组件相关的代码,将其删除,保存修改;

第四步,将QQ皮肤目录下与该组件有关的图标删除(如果不知道删除哪个图标,这一步完全可以省去,不影响修改效果);

第五步,重新加载皮肤,效果就会生效。

说明:(1)在删除组件后,组件间的间隔可能会不一致,影响整个面板的美观。这时可以在config.xml文件中修改相邻组件的left属性,直到自己满意为止。

(2)在上面几步全部做完以后再加载皮肤,不然你会被弹出来的错误消息吓一跳的。

(3)每次修改保存以后,要重新加载皮肤才能使修改效果生效。

(4)万一你重新加载皮肤的时候弹出VBScript文件错误,千万不要慌,这个错误提示中提示具体哪一行出了错,你再到那一行或者那一行的邻行去查找原因(空行也算是一行)。

下面以删除原版皮肤中“QQ邮箱”为例:

第一步,用记事本打开config.xml文件,找到“QQ邮箱”所对应的代码为:

<Button id="MailButton" left="54" top="48" width="40" height="16" zIndex="28" toolTip="收发邮件" cursor="MailButton.cur" visible="true">

<Icon ico="MailButton.ico" cx="16" cy="16" horizontalAlignment="Left" verticalAlignment="Center" leftPadding="0" topPadding="1"/>

<Label labelValue="(0)" color="#071E81" hoverColor="#FFFFFF" fontFamily="MS Sans Serif" fontSize="8" fontStyle="" fontWeight="400" horizontalAlignment="Left" verticalAlignment="Center" leftPadding="18" topPadding="0"/>

</Button>

并记下“QQ邮箱”所对应的id :MailButton;

第二步,将config.xml文件中“QQ邮箱”所对应的代码(即上面这段代码)删除,保存修改;

第三步,用记事本打开VBScript文件,以Mail(即“QQ邮箱”的id去掉后面的Button)为关键字进行搜索,就会在VBScript文件中查找到与“QQ邮箱”相关的代码,有以下5处:

代码1:Dim strQQMailTip

代码2:strQQMailTip = ""

代码3:MailButton.label = strQQMailTip

代码4:Sub MailButton_onClick()

Window.ExeCommand 7,1

End Sub

代码5:

ElseIf code = 100 Then

"改变QQMail的提示

if( var = 0 ) then

strQQMailTip = "(" + "0" + ")"

else

strQQMailTip = "(" + CStr(var) + ")"

end if

MailButton.label = strQQMailTip

将这五处代码删除,保存修改。

第四步,将QQ皮肤目录下与“QQ邮箱”有关的图标MailButton.cur和MailButton.ico删除(如果不确定,这一步完全可以省去,不影响修改效果);

第五步,重新加载皮肤,QQ邮箱就消失了。这时候皮肤面板上面部分图标间隔不一,很不美观,这时候你可以在config.xml文件中修改相邻组件“QQ小秘书”的left属性,直到自己满意为止。

四、添加组件

如果你在修改皮肤时不小心误删了有用组件,或者你下载的别人修改的皮肤中缺少你需要的组件,那么你就要“自己动手,丰衣足食“了。

如果你要添加的组件是原版皮肤中有的,那就好办多了。图标等资源、代码都可以直接从原版皮肤中COPY,然后复制到你的皮肤中相应位置就可以了。

如果你要添加的组件原版皮肤中没有,那就按照以下步骤来做:

第一步,将组件所需要的图标(ICO格式)、图片(BMP格式)等资源放入到QQ皮肤所在目录(如果手头没有相关的图标、图片,自己也不会用PhotoShop等工具制作,这一步就先跳过,在后面我会提到补救的方法);

第二步,在config.xml文件中定义这些资源的属性。

定义组件属性的格式可以参考第一部分第3点(即“3按钮的定义”),然后在这个格式的基础上添加相关属性,相关属性可以参考第一部分第2点(即“2按钮的属性”)。如果在第一步中没有图标、图片等资源,在这里可以将组件定义为文本,文本的代码模板为:

<Text id="…" left="…" top="…" width="…" height="…" zIndex="…" value="…" color="…" hoverColor="…" fontFamily="…" fontSize="…" fontWeight="…" toolTip="…" cursor="*.cur" active="true" visible="true" link="false"/>

(注:各属性的取值可以参考其他组件)

还有一个更简单的方法:把别的按钮或文本的代码COPY过来,然后将相关属性的值改成自己的。

也许有人会问,添加的代码要放到config.xml文件中具体什么位置呢?只要遵守以下两条规则,代码存放的位置是任意的。

规则一:在config.xml文件的开头有这样一段代码:

<?xml version="1.0" encoding="gb2312"?><theme version="1.0">

在config.xml文件的结尾有这样一段代码:

</Window>

</theme>

添加的代码要位于上述两段代码之间。

规则二:添加的代码不能“拆散”已有组件的代码。例如有如下代码:

<Button ……>

<Icon ……/>

<Label ……>

</Button>

我们添加的代码可以位于这段代码之前,也可以位于这段代码之后,但千万不要加在这段代码的中间。

第三步,在VBScript文件调用这些资源并定义相关功能。

如果组件是靠右下角对齐的(跳过第二部分的现在返回去看一下第二部分的第2点:2.定义按钮在面板中的位置。很容易看懂的),还要在VBScript文件中定义组件的位置。定义组件位置的代码添加到什么位置呢?在VBScript文件中找到以下代码:

SearchButton.top = cy - 25

MsgManagerButton.top = cy – 25

将定义组件位置的代码添加到上面这段代码的下一行。

下面来定义组件的功能函数。

功能函数的代码模板是:

sub IPButton_onClick()

tmp="showip.exe"

Set fso = CreateObject("Scripting.FileSystemObject")

If (fso.FileExists(tmp)) Then

Set objShell = CreateObject("Wscript.Shell")

objShell.Run tmp

else

msgbox "发现错误啦!" & chr(10) & "找不到QQ安装目录下的showip.exe文件",,"错误提示"

end if

End Sub

这其实是IP升级器的代码,我们只需要修改其中几处,就可以变成自己的代码:将第一行的IPButton改为所添加组件的 id ;将第二行和第八行中的showip改成外部程序的可执行主程序的名字。

一般皮肤(包括原版皮肤)的VBScript文件中都有下面这句注释:

"处理QQ程序发来的事件

将我们修改好的功能函数代码放到这段注释的上面即可。

第四步,修改VBScript.dll文件。

QQ自带的vbscript.dll文件并不支持调用了外部程序,所以要使用破解的vbscript.dll文件。这也是为什么用我修改的QQ皮肤还要覆盖原版QQ中的vbscript.dll文件的原因。

QQ皮肤,修改器、皮肤编辑器,网上下载:

方法一:下载QQ皮肤编辑器:

QQ皮肤编辑器界面亲切、友好,拥有所见即所得编辑环境,方便大家更轻松完成QQ皮肤的整个制作过程。此外还提供了皮肤预览,可以更便捷的在QQ上随时查看新皮肤的实际效果。

包括内容:

1、皮肤编辑器的各项基本操作方法,如皮肤新建、打开和生成、预览打包等

2、制作皮肤全过程中,用到的皮肤编辑器中的属性设置说明以及部分制作技巧

3、《中国龙》皮肤制作的整个过程介绍

方法二:

做一个完整的QQ皮肤需要不少东西,但是最简单的方法是用现成的。先打开QQ文件夹(默认路径是C:Program FilesTencent),再打开Skin,新建一个文件夹(名字取好听一点的,呆会儿是要在你的QQ中出现的)。然后再打开“蓝色”这个皮肤文件夹,选定名为“skin”的文件,复制,再粘贴到新建的文件夹里。OK,已经做好一半了。

下面我们就可以选择想要的图像了。用右键点击选好的图,选择“目标另存为”,在“保存图片”窗口中把文件名改为“main”,在保存类型下拉框中选“位图(*.bmp)”,然后把文件保存在新建的文件夹里。再点击QQ上的“+”,看看,有一个新东西,那就是做的皮肤!

有时候这样做的皮肤会显得有一点比例失调。只要打开新建的那个文件夹,再打开Skin文件,把里面的“maxwidth=200”语句改为“maxwidth=400”或者是“maxwidth=500”,然后点QQ上的“+”,再点一下新建皮肤,可以把QQ拉大到喜欢大小。

说明:

1.选择的图像一定要是位图(bmp)格式;

2.图像文件的名字一定要是“main”;

3.这种方法是用QQ自带的“蓝色”皮肤文件夹里的配置设置文件的,由于对于新手,所以在其它方面没有加更多的东西(比如说按钮的设置等);

4.QQ的皮肤是没有数量限制的,可以想做多少就做多少。

cloudcone

夜光

最美的花

那年的歌

如此的爱

幸福的故事

S笔记
http://im.q.com/skin/
这里 ,都是免费的

相关推荐

如何设置Jlabel的颜色

label.setForeground(Color.blue);
2023-07-28 18:49:193

VBA中 不能设置类 Range 的 HorizontalAlignment 属性

首先中间的冒号应该是英文的,你用了中文的
2023-07-28 18:49:292

JAVA怎样使Label中的文字居中对齐!

setHorizontalAlignment(SwingConstants.CENTER);
2023-07-28 18:49:407

java 文本框中的字 怎么设置居中方式 或者相似的方法 都可以!!!

说的是html代码吗
2023-07-28 18:49:594

vb如何设置excel某一个单元格内容居中显示?

dimexasobjectdimexwbookasobjectdimexsheetasobjectsetex=createobject("excel.application")setexwbook=ex.workbooks().addsetexsheet=exwbook.worksheets("sheet1")exsheet.cells.horizontalalignment=xlcenter//居中问题exsheet.cells.verticalalignment=xlcenter这个问题我也遇到过我从excel的宏中得到了启发最后搞定了
2023-07-28 18:50:092

编译报错,Exception in thread "main" java.lang.IllegalArgumentException: horizontalAlignment

参数不对吧
2023-07-28 18:50:175

关于listview:列的标题如何居中显示?

Me.ColumnHeader2.TextAlign = System.Windows.Forms.HorizontalAlignment.Center
2023-07-28 18:50:313

excel为什么突然没有表格边框线?

录制宏,使用绝对引用
2023-07-28 18:50:538

Matlab中subplot什么意思

可以用这个将多个图画在一副图上面,方便对比
2023-07-28 18:53:015

怎么把excel表格导入cad

1.怎么在AUTOCAD里面插入EXCEL格式的图表 1、选中excel中的表格,表格的边框要用细线,复制。 2、在cad中在编辑中的选择性粘贴中选autocad图元。3、选择插入点,你会发现插入的表格线没有对齐,用反选选中全部的竖线(有很多横线也被选进来了,下一步我们将去选他们),按住shift正选表格,注意不要把竖线全部包在里面,那样竖线也要被你去选了,现在只剩下竖线了,move他门对齐,trim到左上角那根长出去的线,表格画好了,而且和你手动一根一根画线,再填数字的一模一样。 4、选择表格中的一个文字,看一下他的高度,用windows自带的计算器计算一下它和你想要的字的比例差多少,用scale缩放的你想要的文字大小。如果你还想设制文字的宽度系数,为了制作出和你在excel里面看到对齐方式一样的数据,那就把表格先定义为块,插入块的时候选择x方向的系数,就是文字的宽度系数。 2.Excel表格怎么导入CAD 把Excel导入到CAD有几种形式1,如果你接受CAD中存在Excel对象的话,那么你可以选者CAD中的插入对象,也就是可以直接选中你需要的部分,复制粘贴到CAD里面,那么进去的是一个Excel对象,因为CAD背景是黑色的,而Excel对象是白的,反差很大,所以在里面看着不舒服,但是打印出来都是白色背景,那么就没什么差别。不过这种模式下,你不能对表格应用CAD的形字体,也不好控制Excel表中字体的大小。如果你对制图要求不高,用这种方式就可以了。但是如果你需要表格中的字体及大小与图中的相同,那么只能把Excel导成CAD的图元,这样是要用到方式2 2,利用VBA程序实现CAD与Excel的互交,从而实现将Excel的内容导入到Excel的方式。这个的话需你会编写VBA程序。我前些时间编写了一个。网上应该也有相应的程序的,有VBA的,也有Lisp的。你可以试着搜搜看。 3.平面设计软件CAD怎么插入Excel表格呢 首先打开EXCEL软件,打开软件之后,选中需要的表格,把表格圈起来直接复制下来,可以用快捷键Ctrl+c直接复制 把EXCEL里面的表格复制下来以后,再打开CAD软件并打开需要插入表格的图纸 打开图纸以后,点击软件窗口最上面的编辑,这时会出现下拉菜单,将鼠标移动找到选择性粘贴菜单 找到选择性粘贴菜单以后,用鼠标点击菜单进入选择性粘贴窗口 在选择性粘贴窗口里面选择粘贴选项,并在最为窗口里面选择AutoCAD圆元然后点击确定按钮 设置完选择性粘贴以后这是在图纸里面找到合适的位置,鼠标点击指定位置将在EXCEL里面复制的表格插入的图纸里面 鼠标点击选择插入的EXCEL表格,然后再左侧的工具栏里面选择分解按钮,将表格分解开,这样可以随意调节表格的大小。 这样就完成插入了。 注意事项: 表格插入以后,表格的大小可以再分解以后随意的调节 因为我们学院里面有一章的作业也是需要学生这么操作的。 4.如何在WordExcel中插入AutoCAD 把AutoCAD的图形剪贴到MS Word文档里,看起来一切都比较顺利。 但当把文档打印出来后,那些AutoCAD图形线条变得非常细,效果着实不好。我们提供给用户如下的解决方法: 1.在AutoCAD中使用Postscript打印驱动程序,配置一个Postscript打印机。 2.如果AutoCAD的背景颜色与MS Word的背景颜色不同,例如R14默认的背景颜色是黑色,这时要先改变AutoCAD的背景颜色,与MS Word的背景颜色相同。 3.运行PLOT命令,选择出图到文件。 在画笔指定对话框中设置笔的宽度。 4.开始一个新图,用PSIN命令输入这个.eps文件。 5.然后再把图形剪贴到MS Word中 还有一种方法,可以在AutoCAD中将线条转换成PLINE线,设好宽度再复制、粘贴到WORD中。 5.如何调整从EXCEL中复制到CAD中的表格 excel表格复制到CAD的方法 太复杂了,三下就行了 1、在EXCEL中选中表格,按CTRL+C 2、打开CAD,按CTRL+V 3、调整其大小并移动到需要位置即可 excel实现自动生成目录 Alt+F11---------插入--------模块--------把下面的代码拷贝到模块中 Sub mulu() On Error GoTo Tuichu Dim i As Integer Dim ShtCount As Integer Dim SelectionCell As Range ShtCount = Worksheets。 Count If ShtCount = 0 Or ShtCount = 1 Then Exit Sub Application。ScreenUpdating = False For i = 1 To ShtCount If Sheets(i)。 Name = "目录" Then Sheets("目录")。Move Before:=Sheets(1) End If Next i If Sheets(1)。 Name "目录" Then ShtCount = ShtCount + 1 Sheets(1)。 Select Sheets。 Add Sheets(1)。Name = "目录" End If Sheets("目录")。 Select Columns("B:B")。Delete Shift:=xlToLeft Application。 StatusBar = "正在生成目录…………请等待!" For i = 2 To ShtCount ActiveSheet。Hyperlinks。 Add Anchor:=Worksheets("目录")。Cells(i, 2), Address:="", SubAddress:= _ """ & Sheets(i)。 Name & ""!R1C1", TextToDisplay:=Sheets(i)。Name Next Sheets("目录")。 Select Columns("B:B")。AutoFit Cells(1, 2) = "目录" Set SelectionCell = Worksheets("目录")。 Range("B1") With SelectionCell 。HorizontalAlignment = xlDistributed 。 VerticalAlignment = xlCenter 。AddIndent = True 。 Font。Bold = True 。 Interior。ColorIndex = 34 End With Application。 StatusBar = False Application。ScreenUpdating = True Tuichu: End Sub 直接将程序复制过去,运行--用户子过程/用户窗体---搞定 我修正了楼主的程序,经过调试可行,不会出现“引用无效” Sub mulu() On Error GoTo Tuichu Dim i As Integer Dim ShtCount As Integer Dim SelectionCell As Range ShtCount = Worksheets。 Count If ShtCount = 0 Or ShtCount = 1 Then Exit Sub Application。ScreenUpdating = False For i = 1 To ShtCount If Sheets(i)。 Name = "目录" Then Sheets("目录")。Move Before:=Sheets(1) End If Next i If Sheets(1)。 Name "目录" Then ShtCount = ShtCount + 1 Sheets(1)。 Select Sheets。 Add Sheets(1)。Name = "目录" End If Sheets("目录")。 Select Columns("B:B")。Delete Shift:=xlToLeft Application。 StatusBar = "正在生成目录…………请等待!" For i = 2 To ShtCount ActiveSheet。Hyperlinks。 Add Anchor:=Worksheets("目录")。Cells(i, 2), Address:="", SubAddress:= _ """ & Sheets(i)。 Name & ""!R1C1", TextToDisplay:=Sheets(i)。Name Next Sheets("目录")。 Select Columns("B:B")。AutoFit Cells(1, 2) = "目录" Set SelectionCell = Worksheets("目录")。 Range("B1") With SelectionCell 。HorizontalAlignment = xlDistributed 。 VerticalAlignment = xlCenter 。AddIndent = True 。 Font。Bold = True 。 Interior。ColorIndex = 34 End With Application。 StatusBar = False Application。ScreenUpdating = True Tuichu: End Sub 我们在输入面积和体积时,经常要输入平方(上标2)和立方(上标3)。 在Excel中输入这两个上标,有一个非常简便的方法: 在按住Alt键的同时,按下小键盘上的数字“178”、“179”即可输入“上标2”和“上标3”。 注意:在按住Alt键的同时,试着按小键盘上的一些数字组合(通常为三位),可以得到一些意想不到的字符(例如Alt+137—‰、Alt+177—±等)。 在使用Excel时,首先就需要录入数据,要想让自己数据录得巧、录得省,还是需要掌握不少实用的技巧。 录入技巧 快速填入相同内容 选中多个单元格后,输入字符,然后按Ctrl+Enter组合键,即可在选中的每个单元格中填入上述相同的字符。 快速复制上单元格 选中下面的单元格,按Ctrl+ "("为西文的单引号)组合键,即可将上一单元格的内容快速复制下来。 快速输入系统日期 按下Ctrl+;组合键,即可快速输入系统日期。 文本数字输入技巧 一般情况下,在单元格中输入的任何数字,均以“右对齐”格式放置,而且Excel会把综当成数字来处理。 如果你要输入文本格式的数字,除了事先将单元格设置为文本格式外,只要在数字前多输一个"(单引号)即可。 分数输入技巧 如果事先将Excel单元格设置为“分数”格式,即可在其中输入2/3。5/6这样的分数数据。 除此以外,可以在“常规”单元格中按“0空格分数”的格式输入分数,如输入的“0□2/3 ”(□表示空格)即可显示“2/3”,并按15 位的数字精度进行数据处理。 不过,此法输入的分母不能超过99,否则输入结果显示为0。 权。 6.Excel表格怎么导入CAD 把Excel导入到CAD有几种形式1,如果你接受CAD中存在Excel对象的话,那么你可以选者CAD中的插入对象,也就是可以直接选中你需要的部分,复制粘贴到CAD里面,那么进去的是一个Excel对象,因为CAD背景是黑色的,而Excel对象是白的,反差很大,所以在里面看着不舒服,但是打印出来都是白色背景,那么就没什么差别。 不过这种模式下,你不能对表格应用CAD的形字体,也不好控制Excel表中字体的大小。如果你对制图要求不高,用这种方式就可以了。 但是如果你需要表格中的字体及大小与图中的相同,那么只能把Excel导成CAD的图元,这样是要用到方式22,利用VBA程序实现CAD与Excel的互交,从而实现将Excel的内容导入到Excel的方式。这个的话需你会编写VBA程序。 我前些时间编写了一个。网上应该也有相应的程序的,有VBA的,也有Lisp的。 你可以试着搜搜看。 7.怎样将EXCEL导入CAD中 操作方法如下: 1、首先,打开Excel绘制一个表格; 2、之后框选表格复制到剪切板; 3、打开AutoCAD,在“默认”选项下找到“剪切板”工具; 4、在“剪切板”工具中,点击“粘贴”图标下的箭头; 5、点击“粘贴”选项中的“选择性粘贴”,选择“CAD图”; 6、最后,点击“确定”,并把鼠标拖动到适当位置完成粘贴即可。 扩展资料: CAD如何将线段等分: 1、如下图,是一根长为300mm 的线段; 2、先要设置点的大小。选择“格式”——“点样式”。选择点的目的,主要是为了便于观看已经定距等分好的线段。等确定了点之后,在点附近做好图之后,再把点删掉就好了; 3、输入快捷键 ” me“,按“enter”键。这时选择直线,就会出现输入定距等分的距离; 4、输入自己要定距等分的距离,假设是50mm 。就会出现6个点了。这样定距等分就完成了。
2023-07-28 18:54:001

excel绝对路径引用怎么改成相对路径

看不懂啊~是不是可以用别的语言生成一个目录文件,再用excel去读取。呵呵~
2023-07-28 18:54:106

如何用VBA实现对单元格增加边框,以及单元格内容居中等格式设置。

最好的办法(或者说类似功能的学习方法),录制宏,再进行修改。
2023-07-28 18:54:453

VB6.0调用EXCEL2003出错,怎么解决?

错误指在哪一行?
2023-07-28 18:55:482

如何使button上的文字居左显示

// button.titleLabel.textAlignment = NSTextAlignmentLeft; 这句无效 button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0); 这里使用button.titleLabel.textAlignment = NSTextAlignmentLeft; 这行代码是没有效果的,这只是让标签中的文本左对齐,但并没有改变标签在按钮中的对齐方式。所以,我们首先要使用button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; 这行代码,把按钮的内容(控件)的对齐方式修改为水平左对齐,但是这们会紧紧靠着左边,不好看,所以我们还可以修改属性:button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);这行代码可以让按钮的内容(控件)距离左边10个像素,这样就好看多了
2023-07-28 18:56:201

WPF Canvas子控件Label无法居中

在blend4里面编辑试试,把label拖到中间,看看代码然后变化
2023-07-28 18:56:282

matlab中怎么画出有刻度的空间直角坐标系

这样有两种方法呢!一种就是利用hold on另一种就是plot(x1,y1,x2,y2,x3,y3……);这两种都可以完成你说的那个问题,你可以试一下!祝你成功!!
2023-07-28 18:56:352

java简单计算器实验报告

1000分估计有人会干这体力活。
2023-07-28 18:57:032

如何将Matlab的运行结果通过程序自动导入Excel中?

用xlwrite
2023-07-28 18:57:164

在问你个SWT插件的问题,我想在table表格的一个格当中添加多个图标按钮,怎么添加呢?

这个需要覆盖表格的方法 具体是什么我忘记了 边个的显示是用的cellRender 而当你鼠标放上去的时候 他就会渲染cellEditor 你从这里入手看看嘛
2023-07-28 18:57:251

vbs 设置单元格居中

合并及居中Range("A1:E1").SelectSelection.MergeSelection.HorizontalAlignment = xlCenter左对齐,最后一句改为Selection.HorizontalAlignment = xlLeft右对齐,最后一句改为Selection.HorizontalAlignment = xlRight
2023-07-28 18:57:371

c# 如何把查询到的数据便利到listview中

循环datatable的每一行插入就行了。
2023-07-28 18:57:473

java中jlabel什么意思

对JLabel加一个鼠标监听器就行了方法:addMouseListener(MouseListener l)。传递的参数是实现了MouseListener接口的类(也就是说你需要自定义一个类,用implements关键字实现MouseListener接口,JDK中自带了一个MouseAdapter类可以使用)。然后重写该类的mouseClicked(MouseEvent e)方法就行了。参数MouseEvent e可以在方法中来判断事件源。e.getSource()返回事件源的对象,比如是JLabel或者JButton之类的对象。比如你在你的程序中实例化了一个名为jl的JLabel对象(JLabel jl = new JLabel),那么用e.getSource.equals(jl)就可以判断了。望采纳 谢谢
2023-07-28 18:58:073

Java中的JLabel

SwingConstants.LEFT就是左对齐
2023-07-28 18:58:177

java中的标签JLabel.setHorizontalAlignment()括号中要怎么写才是文本居中?

JLabel.setHorizontalAlignment(JLabel.CENTER);
2023-07-28 18:58:401

matlab中subplot怎么用

subplot就是将Figure中的图像划分为几块,每块当中显示各自的图像,有利于进行比较。比如Example里面有这样的例子income = [3.2 4.1 5.0 5.6];outgo = [2.5 4.0 3.35 4.9];subplot(2,1,1); plot(income)subplot(2,1,2); plot(outgo)先用subplot划分Figure为2*1的区域,上面一个显示income,下面一个显示outgo。subplot的格式为(行数,列数,第几个区域的位置),不加逗号也是可以的。
2023-07-28 18:58:501

Java中的JLabel是什么意思?

//JLabel l = new JLabel("单独",SwingConstants.RIGHT);JLabel l = new JLabel("单独",SwingConstants.LEFT);,SwingConstants.RIGHT设置显示内容的对齐方式,可以试试上面两个,一个是右对齐,一个是左对齐//添加图片(1.jpg是文件路径,图片在项目的根目录可以这么写,也可以写绝对路径如:c:\1.jgp)l.setIcon(new ImageIcon("1.jpg"));
2023-07-28 18:59:513

java 编程中用到了textField 这个类 怎么让字靠右显示?

setHorizontalAlignmentpublic void setHorizontalAlignment(int alignment)设置文本的水平对齐方式。有效值包括: JTextField.LEFT JTextField.CENTER JTextField.RIGHT JTextField.LEADING JTextField.TRAILING 当设置对齐方式时,调用 invalidate 和 repaint,并且激发 PropertyChange 事件("horizontalAlignment")。 参数:alignment - 对齐方式 抛出: IllegalArgumentException - 如果 alignment 不是一个有效键
2023-07-28 19:00:021

关于按钮的问题,怎样让按钮上的字向左对齐

// button.titleLabel.textAlignment = NSTextAlignmentLeft; 这句无效 button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0); 这里使用button.titleLabel.textAlignment = NSTextAlignmentLeft; 这行代码是没有效果的,这只是让标签中的文本左对齐,但并没有改变标签在按钮中的对齐方式。所以,我们首先要使用button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; 这行代码,把按钮的内容(控件)的对齐方式修改为水平左对齐,但是这们会紧紧靠着左边,不好看,所以我们还可以修改属性:button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);这行代码可以让按钮的内容(控件)距离左边10个像素,这样就好看多了
2023-07-28 19:00:111

这个波形的函数表达式怎么表达

用text函数,例如: x = -pi:.1:pi; y = sin(x); p = plot(x,y) set(gca,"XTick",-pi:pi/2:pi) set(gca,"XTickLabel",{"-pi","-pi/2","0","pi/2","pi"}) xlabel("-pi leq Theta leq pi") ylabel("sin(Theta)") title("Plot of sin(Theta)") % Theta appears as a Greek symbol (see String) % Annotate the point (-pi/4, sin(-pi/4)) text(-pi/4,sin(-pi/4),"leftarrow sin(-pidiv4)",... "HorizontalAlignment","left") % Change the line color to red and % set the line width to 2 points set(p,"Color","red","LineWidth",2)
2023-07-28 19:00:321

如何用VBA实现对单元格增加边框,以及单元格内容居中等格式设置。

使用VBA可以轻松的设置Excel中的一个或多个单元格甚至是一个区域的或者是被选中单元格的左对齐、友对齐、居中对齐、字体、字号、字型等属性
2023-07-28 19:00:422

asp中使用Excel.Application无法生成excel,求高人帮忙!!

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%><% "省略验证是否有管理员权限的语句"欢迎围观:http://hi.baidu.com/helong72 ,这个代码是我生成通讯录用的dim conn,strconn strconn="driver={Microsoft Access driver (*.mdb)};dbq="&server.mappath("dataBase/DB#addressList.mdb") "这里改为你的数据库地址set conn=server.CreateObject("adodb.connection") conn.Open strconn dim s,sql,filename,fs,myfile,x Set fs = server.CreateObject("scripting.filesystemobject") "--假设你想让生成的EXCEL文件做如下的存放 filename = Server.MapPath("excel.xls") "--如果原来的EXCEL文件存在的话删除它 if fs.FileExists(filename) then fs.DeleteFile(filename) end if "--创建EXCEL文件 set myfile = fs.CreateTextFile(filename,true) StartTime = Request("StartTime")EndTime = Request("EndTime")StartEndTime = "AddTime between #"& StartTime &" 00:00:00# and #"& EndTime &" 23:59:59#"strSql = "select * from tAddressList"Set rstData = DataToRsStatic(conn,strSql)if not rstData.EOF and not rstData.BOF then dim trLine,responsestr strLine = "序 号" & chr(9) & "姓 名" & chr(9) & "电 话" & chr(9) & "Q Q" & chr(9) & "邮 箱" & chr(9) & "地 址" & chr(9) & "生 日" & chr(9) & "备 注" "--将表的列名先写入EXCEL myfile.writeline strLine Do while Not rstData.EOF strLine="" strLine = rstData("fid") & chr(9) & rstData("fName")& chr(9) & rstData("fTel") & chr(9) & rstData("fQQ") & chr(9) & rstData("fEmail")& chr(9)&rstData("fAddress")& chr(9) &rstData("birthday")& chr(9) & rstData("fNote") & chr(9)& IfSendStr "括号改为你的数据库字段 myfile.writeline strLine rstData.MoveNext loop end if Response.Charset="utf-8"Response.Write "<br><br>生成EXCEL文件成功,点击<a href=""excel.xls"" target=""_blank"">下载</a>!"rstData.Close set rstData = nothingConn.CloseSet Conn = nothingFunction DataToRsStatic(Conn,strSql) Dim RsStatic Set DataToRsStatic = Nothing If Conn Is Nothing Then Exit Function End If Set RsStatic = CreateObject("ADODB.RecordSet") RsStatic.CursorLocation = 3 RsStatic.Open strSql,Conn,3,3 If Err.Number <> 0 Then Exit Function End If Set DataToRsStatic = RsStaticEnd Function%>
2023-07-28 19:00:491

jl.setHorizontalAlignment(JLabel.CENTER);为什么CENTER改为BOTTOM就有错误?

setHorizontalAlignment只有LEFT、CENTER、RIGHT三种选项,没有BOTTOM,BOTTOM是setVerticalAlignment的选项。
2023-07-28 19:00:571

在winform中listView1怎么绑定数据库

private void FrmXMLShow_Load(object sender, EventArgs e) { // listview样式设置 listView1.GridLines = true; listView1.FullRowSelect = true; listView1.View = View.Details; listView1.Scrollable = false; listView1.MultiSelect = false; listView1.HeaderStyle = ColumnHeaderStyle.Clickable; // 表头设置 listView1.Columns.Add("ID", 50, HorizontalAlignment.Center); listView1.Columns.Add("姓名", 50, HorizontalAlignment.Center); listView1.Columns.Add("性别", 50, HorizontalAlignment.Center); listView1.Columns.Add("年龄", 50, HorizontalAlignment.Center); listView1.Columns.Add("学校", 150, HorizontalAlignment.Center); listView1.Columns.Add("联系电话", 150, HorizontalAlignment.Center); foreach (Information i in ixs.ReadAllInformation()) { ListViewItem item = new ListViewItem(); item.SubItems.Clear(); item.Text = i.Id; item.SubItems.Add(i.Name); item.SubItems.Add(i.Gender); item.SubItems.Add(i.Age.ToString()); item.SubItems.Add(i.University); item.SubItems.Add(i.Phone); listView1.Items.Add(item); } }
2023-07-28 19:02:181

如何使button上的文字居左显示

// button.titleLabel.textAlignment = NSTextAlignmentLeft; 这句无效 button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0); 这里使用button.titleLabel.textAlignment = NSTextAlignmentLeft; 这行代码是没有效果的,这只是让标签中的文本左对齐,但并没有改变标签在按钮中的对齐方式。所以,我们首先要使用button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; 这行代码,把按钮的内容(控件)的对齐方式修改为水平左对齐,但是这们会紧紧靠着左边,不好看,所以我们还可以修改属性:button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);这行代码可以让按钮的内容(控件)距离左边10个像素,这样就好看多了
2023-07-28 19:02:251

求帮忙编写一个JAVA代码 输入三个系数abc 然后解这个一元二次方程的值 x和y

写了个很简单的界面,你参考一下吧。import java.awt.*;import javax.swing.*;import java.awt.event.*;public class test extends JFrame{JLabel l1=new JLabel("a:");JLabel l2=new JLabel("b:");JLabel l3=new JLabel("c:");JButton b=new JButton("计算");JTextField t1=new JTextField();JTextField t2=new JTextField();JTextField t3=new JTextField();JLabel l4=new JLabel(" ");JLabel l5=new JLabel(" ");JLabel l6=new JLabel();public void init(){setLayout(new GridLayout(10,1));add(l1);add(t1);add(l2);add(t2);add(l3);add(t3);add(b);add(l6);add(l4);add(l5);l1.setHorizontalAlignment(JLabel.CENTER);l2.setHorizontalAlignment(JLabel.CENTER);l3.setHorizontalAlignment(JLabel.CENTER);l4.setHorizontalAlignment(JLabel.CENTER);l5.setHorizontalAlignment(JLabel.CENTER);b.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){double a=Double.parseDouble(t1.getText());double b=Double.parseDouble(t2.getText());double c=Double.parseDouble(t3.getText());double dt=b*b-4*a*c;if(a==0){l6.setText("非一元二次方程");}else if(dt>0){l6.setText("实根");l4.setText("x="+((-b)+Math.sqrt(dt))/2/a);l5.setText("y="+((-b)-Math.sqrt(dt))/2/a);}else{l6.setText("虚根");l4.setText("x="+((-b)/2/a)+"+"+Math.sqrt(-dt)/2/a+"i");l5.setText("y="+((-b)/2/a)+"-"+Math.sqrt(-dt)/2/a+"i");}}});setBounds(200,200,500,500);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//pack();setVisible(true);}public static void main(String[]args){new test().init();}}
2023-07-28 19:02:581

如何用JAVA做出登录器 见图

很简单,我有空帮你做,不过界面上应该还有其他内容,比如菜单里面的东西,所以在就百度HI我
2023-07-28 19:03:215

java的swing组件的使用

这个oracle网站有教程
2023-07-28 19:03:583

怎么在listview中画网格线?

将ShowGroups设置为False将GridLines=True
2023-07-28 19:04:052

如何让C#中listview控件显示多行多列数据?

  ListView我认为是种数据型的控件,以装载和展示数据为目的,当然也能展示图片,这个功能没有试过。这里讲一下ListView的第一次使用后的一些小结。    ListView一些设置与添加字段。  Lv1 = new ListView ( ) ; //实例化  Lv1.GridLines = true ; file://显示各个记录的分隔线  Lv1.FullRowSelect = true ; file://要选择就是一行  Lv1.View = View.Details ; file://定义列表显示的方式  Lv1.Scrollable = true ; file://需要时候显示滚动条  Lv1.MultiSelect = false ; // 不可以多行选择  listView1.Items.Remove(listView1.SelectedItems[0]); //这样可以在ListView中删除选择的行  Lv1.HeaderStyle = ColumnHeaderStyle.Nonclickable ;// 针对数据库的字段名称,建立与之适应显示表头    设置列名称:  Lv1.Columns.Add ( "A" , 60 , HorizontalAlignment.Right ) ;  Lv1.Columns.Add ( "B" , 100 , HorizontalAlignment.Left ) ;  Lv1.Columns.Add ( "C" , 100 , HorizontalAlignment.Left ) ;  Lv1.Visible = true ;    用循环把数据插入进ListView,用reader方法读取中括号中的字段名。  lv1.Items.Clear(); //清空lv1中的记录  ListViewItem li = new ListViewItem();  li.SubItems.Clear(); //清空每行数据的每一列数据。  foreach (DataRow reader in stu.Rows) //前提是stu有数据,stu是DataTable  {  ListViewItem item = new ListViewItem((reader["EMP_NO"]).ToString());  item.SubItems.Add(reader["NAME"].ToString());  item.SubItems.Add(reader["ID"].ToString());  this.lv1.Items.Add(item);  }  接下来说说Listview中的一些小技巧。  一、鼠标选中一行记录,如何读取那行记录中的某列记录??  很简单用这句话:lv1.SelectedItems[0].SubItems[0].Text    SelectedItems[0]指的是你选中的行,如果你选中的是多行,那么第一行中括号里就是0,第二行就是1,以此类推。  SubItems[0] 指的是你选中的列,第一列中括号里就是0,第二行就是1,以此类推。    二、Listview中双击记录事件。  在 .cs 文件里写:  private void lv1_DoubleClick(object sender, EventArgs e) //双击listview  {  //这里写你想要产生的事件。例如:  MessageBox.Show("OK");  }  在 .Designer.cs 文件里找到相关的控件代码写入如下信息:  this.lv1.DoubleClick += new System.EventHandler(this.lv1_DoubleClick);  例如:  // lv1  //  this.lv1.Location = new System.Drawing.Point(-3, 98);  this.lv1.Name = "lv1";  this.lv1.Size = new System.Drawing.Size(1018, 527);  this.lv1.TabIndex = 28;  this.lv1.UseCompatibleStateImageBehavior = false;  this.lv1.View = System.Windows.Forms.View.Details;  this.lv1.DoubleClick += new System.EventHandler(this.lv1_DoubleClick);  三、Listview隐藏列  有时候用Listview会遇到这样的麻烦。  众所周知主键是区分每条不同记录最可靠的方法,一旦主键不显示在Listview中,那选中Listview某一行也就意味着在这一行中取不到这条记录的主键,只能取到其他显示的字段,那如何把这条记录传递给其他窗口呢?用其他字段?如果是这样的话就风险太大了,因为其他字段会有重复的可能,这样的程序就会出现BUG。  这时候就该发挥隐藏列的作用了,隐藏列方便使用,其作用是在前台页面看不出有那条主键的字段,但是在代码控制中却包含了这个字段,我们点击某一条记录时就能方便的获取这条记录的主键字段,这样只要把这字段字符传到其他窗体就没问题了,因为主键字段是唯一且不能为空的。  下面说说具体实现方法。  Lv1.Columns.Add ( "A" , 60 , HorizontalAlignment.Right ) ;  Lv1.Columns.Add ( "B" , 100 , HorizontalAlignment.Left ) ;  Lv1.Columns.Add ( "C" , 100 , HorizontalAlignment.Left ) ;  Lv1.Visible = true ;    foreach (DataRow reader in stu.Rows) //前提是stu有数据,stu是DataTable  {  ListViewItem item = new ListViewItem((reader["EMP_NO"]).ToString());  item.SubItems.Add(reader["NAME"].ToString());  item.SubItems.Add(reader["ID"].ToString());  item.SubItems.Add(reader["PrimaryKey"].ToString());  this.lv1.Items.Add(item);  }  红色的是列的标题,白色的是循环输出每一行数据,这样可以很明显的看出,只有3列,却插入了4列的数据,而最后一列就是主键,而显示是也只有3列,那有人会问了,既然第四列没有显示,如何去第四列的数据呢?  也是同样的代码:lv1.SelectedItems[0].SubItems[3].Text  这个3显示的就是第四列的数据,因为计算机是从0开始计数的,很简单吧!  namespace ListViewExercise  {  public partial class Form1 : Form  {  public Form1()  {  InitializeComponent();  ListViewSet();  CreateViewItemMethodOne();  //CreateViewItemMethodTow();  }  /// ListView 设置  private void ListViewSet()  {  //ListView显示方式  listViewControl.View = View.Details;  }  /// //手动填加ListView方法1  private void CreateViewItemMethodOne()  {  listViewControl.BeginUpdate();  #region 增加Item的标题,共有三个列  //1、创建标题  listViewControl.Columns.Add("文件名");  listViewControl.Columns.Add("大小");  listViewControl.Columns.Add("创建日期");  #endregion  #region 手动填加ListView方法  //2、增加第一个Item,在View.Details模式下,有点像第一列中一个值  listViewControl.Items.Add("folder1","文件夹1",0);  //3、增加第一个Item的第一个SubItem,在View.Details模式下,有点像第一列中一个值  listViewControl.Items["folder1"].SubItems.Add("11");  //增加第一个Item的第二个SubItem,在View.Details模式下,有点像第一列中一个值  listViewControl.Items["folder1"].SubItems.Add("20080114");  listViewControl.Items.Add("folder2","文件夹2",0);  listViewControl.Items["folder2"].SubItems.Add("21");  listViewControl.Items["folder2"].SubItems.Add("20080115");  listViewControl.Items.Add("文件夹3");  listViewControl.Items.Add("文件夹4");  #endregion  listViewControl.EndUpdate();  }  /// 手动填加ListView方法2  private void CreateViewItemMethodTow()  {  #region 增加Item的标题,共有三个列  //1、创建标题,共三列  listViewControl.Columns.Add("文件名");  listViewControl.Columns.Add("大小");  listViewControl.Columns.Add("创建日期");  #endregion  listViewControl.BeginUpdate();  #region 增加第一个Item  //2、定义一个ListViewItem,在View.Details模式下,有点像第一列中一个值  ListViewItem lvItem;  //3、定义ListViewSubItem,在View.Details模式下,有点像第二列中一个值  ListViewItem.ListViewSubItem lvSubItem;  //实列化一个Item,在View.Details模式下,有点像加第一行的第一个值  lvItem = new ListViewItem();  //Item的显示的文字  lvItem.Text = "文件夹1";  //4、Item增加到ListView控件中,即增加第一行。在View.Details模式下,有点像增加了第一个项目的第一列的第一个值  listViewControl.Items.Add(lvItem);    //实例化SubItem  lvSubItem = new ListViewItem.ListViewSubItem();  lvSubItem.Text = "10";  //5、将SubItem增加到第一个Item中,在View.Details模式下,有点像增加了第一个项目的第二列的第一个值  lvItem.SubItems.Add(lvSubItem);  lvSubItem = new ListViewItem.ListViewSubItem();  lvSubItem.Text = "20080114";  //将SubItem增加到第一个Item中,在View.Details模式下,有点像增加了第一个项目的第三列的第一个值  lvItem.SubItems.Add(lvSubItem);  #endregion  #region 增加第二个Item  lvItem = new ListViewItem();  lvItem.Text = "文件夹2";  lvSubItem = new ListViewItem.ListViewSubItem();  lvSubItem.Text = "20";  lvItem.SubItems.Add(lvSubItem);  lvSubItem = new ListViewItem.ListViewSubItem();  lvSubItem.Text = "20080115";  lvItem.SubItems.Add(lvSubItem);  listViewControl.Items.Add(lvItem);  #endregion  listViewControl.EndUpdate();  }    //第三种自己的方法,挺有效的,简单的  private void CreateViewItems()  {  listView1.BeginUpdate();  listView1.Columns.Add("矩阵控制命令");  listView1.Columns.Add("功能描述");  listView1.Columns[0].Width=145;  listView1.Columns[1].Width=515;  listView1.Items.Add("/%Lock;");  listView1.Items[0].SubItems.Add("锁定键盘");  listView1.Items.Add("/%Unlock;");  listView1.Items[1].SubItems.Add("解开键盘的锁定");  listView1.Items.Add("/Version;");  listView1.Items[2].SubItems.Add("查询软件版本");  listView1.Items.Add("/:BellOff;");  listView1.Items[3].SubItems.Add("关闭蜂鸣器");  listView1.EndUpdate();  }  }  }
2023-07-28 19:04:143

matlab中的 HorizontalAlignment是什么意思

下对齐/下端排列位置
2023-07-28 19:04:211

matlab2016a中的dmod函数没有怎么办?

如果你的 MATLAB 版本中没有 dmod 函数,你可以自己编写该函数来模拟它的功能。dmod 函数的作用是将数字信号进行调制,包括调幅(AM)、调频(FM)和相位调制(PM)等方式。下面是一个简单的例子,演示如何使用 MATLAB 来实现 BPSK 调制(二进制相移键控):% 生成随机的二进制数字序列N = 1000; % 信号长度bits = randi([0 1], N, 1); % 二进制随机数字序列% 设置参数Fc = 10; % 载波频率Fs = 100; % 采样率T = 1/Fs; % 采样间隔% 生成调制信号t = (0:N-1)*T; % 时间向量s = sqrt(2/T)*sin(2*pi*Fc*t + pi*(1-bits)); % BPSK 调制信号% 绘制时域波形和频谱figure;subplot(2,1,1); plot(t, s); title("BPSK 调制信号时域波形");subplot(2,1,2); pwelch(s,[],[],[],Fs); title("BPSK 调制信号频谱");这段代码将随机生成长度为 1000 的二进制数字序列,然后使用 BPSK 调制生成一个调制信号 s。在绘制时域波形和频谱时,使用 pwelch 函数进行频谱估计。你可以根据自己的需要修改代码来实现不同的调制方式。
2023-07-28 19:04:281

perl的win32::OLE怎么改EXCEL单元格格式,改行高和字居中怎么表达? 感谢!

行高,应该是RowHeight,即# 调整行高$wks->Rows(1)->{RowHeight} = 15;居中,应该是HorizontalAlignment#设置单元格(1,1)为横向居中$wks->Cells(1,1)->{HorizontalAlignment} = xlHAlignCenter;#设置第一列为横向居中$wks->Columns(1)->{HorizontalAlignment} = xlHAlignCenter;注意使用常量xlHAlignCenter必须先引用:use Win32::OLE::Const "Microsoft Excel";
2023-07-28 19:04:361

怎样用DELPHI控制EXCEL中某一单元格的某一边框是否显示

这是我利用excel中的宏编辑的数据倒入excel中的一个例子,希望有帮助。procedure TForm_ejjgs.BitBtn8Click(Sender: TObject);var excel,workbook:variant; xlsfilename:string; i,j:integer; begin try excel:=createoleobject("excel.application"); workbook:=createoleobject("excel.sheet"); except showmessage("您的机器里未安装Microsoft excel"); end; try excel:=createoleobject("excel.application"); excel.workbooks.open("c:gcsgldemo.xls"); xlsfilename:="demo.xls"; excel.worksheets[4].activate; //ClearContents excel.activeSheet.Name:= "二级注册结构师"; //给单元格赋值。 Data.ADOQuery_gcsgl.First; j:=data.adoquery_gcsgl.recordcount; //["a2:h"+InttoStr(j+2)].ClearContents; excel.activesheet.range["a2:h1000"].ClearContents; for i:=1 to Data.ADOQuery_gcsgl.RecordCount do begin excel.Cells(i+2,1):=Data.ADOQuery_gcsgl.FieldByName("序号").asstring; excel.Cells(i+2,2):=Data.ADOQuery_gcsgl.FieldByName("姓名").asstring; excel.Cells(i+2,3):=Data.ADOQuery_gcsgl.FieldByName("注册单位").asstring; excel.Cells(i+2,4):=trim(Data.ADOQuery_gcsgl.FieldByName("身份证号").asstring); excel.Cells(i+2,5):=Data.ADOQuery_gcsgl.FieldByName("执业印章号").asstring; excel.Cells(i+2,6):=Data.ADOQuery_gcsgl.FieldByName("注册证书号").asstring; excel.Cells(i+2,7):=Data.ADOQuery_gcsgl.FieldByName("截止日期").asstring; excel.Cells(i+2,8):=Data.ADOQuery_gcsgl.FieldByName("备注").asstring; excel.activesheet.rows[i+2].rowheight:=20; Data.ADOQuery_gcsgl.MoveBy(1); end; //格式 excel.activesheet.range["a1:h1"].font.FontStyle:="粗体"; excel.activesheet.range["a1:h1"].HorizontalAlignment := xlCenter; excel.activesheet.range["a1:h1"].VerticalAlignment:= xlCenter; excel.activesheet.range["a1:h1"].ReadingOrder := xlContext; excel.activesheet.range["a1:h1"].MergeCells := True; excel.activesheet.range["a2:h2"].font.FontStyle:="粗体"; excel.cells[1,1].value:="甘 肃 省 二 级 注 册 结 构 师 名 单"; excel.ActiveSheet.PageSetup.TopMargin :=2.8/0.035; //列宽 excel.activesheet.columns[1].columnwidth:=6; excel.activesheet.columns[2].columnwidth:=6; excel.activesheet.columns[3].columnwidth:=30; excel.activesheet.columns[4].columnwidth:=20; excel.activesheet.columns[5].columnwidth:=15; excel.activesheet.columns[6].columnwidth:=15; excel.activesheet.columns[7].columnwidth:=10; excel.activesheet.columns[8].columnwidth:=20; excel.cells[2,1].value:="序号"; excel.cells[2,2].value:="姓名"; excel.cells[2,3].value:="注册单位"; excel.cells[2,4].value:="身份证号"; excel.cells[2,5].value:="执业印章号"; excel.cells[2,6].value:="注册证书号"; excel.cells[2,7].value:="截止日期"; excel.cells[2,8].value:="备 注"; //设置边框 excel.activesheet.range["a2:h"+InttoStr(j+2)].borders[1].weight:=2; excel.activesheet.range["a2:h"+InttoStr(j+2)].borders[2].weight:=2; excel.activesheet.range["a2:h"+InttoStr(j+2)].borders[3].weight:=2; excel.activesheet.range["a2:h"+InttoStr(j+2)].borders[4].weight:=2; //对齐方式 ExlApp.Selection.HorizontalAlignment:=3; excel.activesheet.columns[1].HorizontalAlignment:=3; excel.activesheet.columns[2].HorizontalAlignment:=3; excel.activesheet.columns[4].HorizontalAlignment:=3; excel.activesheet.columns[5].HorizontalAlignment:=3; excel.activesheet.columns[6].HorizontalAlignment:=3; excel.activesheet.columns[7].HorizontalAlignment:=3; excel.activesheet.columns[8].HorizontalAlignment:=3; excel.activesheet.columns[2].verticalAlignment:=2; excel.activesheet.columns[1].verticalAlignment:=2; //设置自动换行 excel.activesheet.columns[8].WrapText:=false; excel.activesheet.columns[8].ShrinkToFit:=true; excel.activesheet.columns[8].ReadingOrder :=xlContext; //设置页边距 excel.activesheet.pagesetup.topMargin:=2/0.035; excel.activesheet.pagesetup.headerMargin:=1.8/0.035; excel.activesheet.pagesetup.leftMargin:=1.5/0.035; excel.activesheet.pagesetup.rightMargin:=1/0.035; excel.activesheet.pagesetup.bottomMargin:=2/0.035; //设置文本属性。 excel.activesheet.Columns["d:d"].NumberFormatLocal:="0"; excel.activesheet.Columns["e:e"].NumberFormatLocal:="0"; excel.activesheet.Columns["f:f"].NumberFormatLocal:="0"; excel.activesheet.Columns["g:g"].NumberFormatLocal:="0"; excel.activesheet.Columns["e:e"].NumberFormatLocal:="0"; //excel.ActiveSheet.PageSetup.PrintArea :=""; excel.ActiveSheet.PageSetup.Orientation:=xlLandscape; //横向打印 except exit; end; //保存为excel excel.displayalerts:=false; excel.activeworkbook.saveas("c:gcsgldemo.xls"); excel.workbooks.close; excel.quit; showmessage("已保存完毕!")end;
2023-07-28 19:04:451

C# wpf 放在StackPanel中的确定位置

Button btn1 = new Button() { Name = "btn1", Content = "btn1", Width = 150, Height = 150 }; Button btn2 = new Button() { Name = "btn2", Content = "btn2", Width = 150, Height = 150 }; this.RegisterName("btn1", btn1); this.RegisterName("btn2", btn2); stackPanel1.Children.Add(btn1); stackPanel1.Children.Add(btn2); Button _btn1 = (Button)stackPanel1.FindName("btn1"); Button _btn2 = (Button)stackPanel1.FindName("btn2"); int cc =0; if (cc==0) { _btn1.HorizontalAlignment = HorizontalAlignment.Left; _btn2.HorizontalAlignment = HorizontalAlignment.Right; } else { _btn1.HorizontalAlignment = HorizontalAlignment.Right; _btn2.HorizontalAlignment = HorizontalAlignment.Left; }
2023-07-28 19:05:111

如何让excel表格中数据显示居中或靠右?

格式-单元格-对齐,你的没显示格式工具栏?
2023-07-28 19:05:276

设计一个简单的计算器程序

C:简易计算器:#include<stdio.h>main(){float a,b,result;char op;scanf("%f%c%f",&a,&op,&b);switch(op){case"+":result=a+b;printf("=%f",result);break;case"-":result=a-b;printf("=%f",result);break;case"*":result=a*b;printf("%f",result);break;case"/":if(b==0.0)printf("error! ");result=a/b;printf("=%f",result);default:printf("error due to the illegal input! ");break;}}JAVA:import java.awt.*;import javax.swing.*;import java.awt.event.*;class Counter2 extends WindowAdapter{ static JFrame f=new JFrame("计算器"); static JTextField text1=new JTextField("0."); static String source=""; static String cal=""; static String object=""; static boolean flag=false; static boolean flag1=true; static boolean flag2=false; public void init() { try { Container c=f.getContentPane(); JPanel pan1=new JPanel(); JButton b1=new JButton("1"); JButton b2=new JButton("2"); JButton b3=new JButton("3"); JButton b4=new JButton("4"); JButton b5=new JButton("5"); JButton b6=new JButton("6"); JButton b7=new JButton("7"); JButton b8=new JButton("8"); JButton b9=new JButton("9"); JButton b0=new JButton("0"); JButton b11=new JButton("+"); JButton b12=new JButton("-"); JButton b13=new JButton("*"); JButton b14=new JButton("/"); JButton b15=new JButton("."); JButton b16=new JButton("="); JButton bclar=new JButton("清零"); text1.setHorizontalAlignment(JTextField.RIGHT); c.add(text1,"North"); c.add(pan1); A aa=new A(); Result re=new Result(); Opertion op=new Opertion(); Clar cl=new Clar(); b1.addActionListener(aa); b2.addActionListener(aa); b3.addActionListener(aa); b4.addActionListener(aa); b5.addActionListener(aa); b6.addActionListener(aa); b7.addActionListener(aa); b8.addActionListener(aa); b9.addActionListener(aa); b0.addActionListener(aa); b11.addActionListener(op); b12.addActionListener(op); b13.addActionListener(op); b14.addActionListener(op); b16.addActionListener(re); b15.addActionListener(aa); bclar.addActionListener(cl); pan1.add(b1); pan1.add(b2); pan1.add(b3); pan1.add(b11); pan1.add(b4); pan1.add(b5); pan1.add(b6); pan1.add(b12); pan1.add(b7); pan1.add(b8); pan1.add(b9); pan1.add(b13); pan1.add(b0); pan1.add(b15); pan1.add(b16); pan1.add(b14); pan1.add(bclar); f.setSize(200,220); f.setVisible(true); } catch(Exception e) { System.out.println(e.getMessage()); } } class A implements ActionListener { public void actionPerformed(ActionEvent e) { String a=text1.getText(); String s=e.getActionCommand(); if(a.equals("0.")||a.equals("+")||a.equals("-")||a.equals("*")||a.equals("/")) text1.setText(s); else { if(flag2) { text1.setText(s); flag2=false; } else text1.setText(a+s); } } } class Opertion implements ActionListener { public void actionPerformed(ActionEvent e) { cal=e.getActionCommand(); if(flag1==true) source=text1.getText(); text1.setText(cal); flag1=false; flag=true; } } class Result implements ActionListener { public void actionPerformed(ActionEvent e) { double num1; num1=Double.parseDouble(source); object=text1.getText(); double num2; num2=Double.parseDouble(object); double result=0; if(cal.equals("+")) result=num1+num2; if(cal.equals("-")) result=num1-num2; if(cal.equals("*")) result=num1*num2; if(cal.equals("/")) if(num2==0) text1.setText("除数不能为0"); else result=num1/num2; String s1=Double.toString(result); text1.setText(s1); flag1=true; flag2=true; } } class Clar implements ActionListener { public void actionPerformed(ActionEvent e) { text1.setText("0."); } } public static void main(String[] args) { Counter2 count=new Counter2(); count.init(); } public void windowClosing(WindowEvent e){ System.exit(1); } public void windowOpened(WindowEvent e){} public void windowIconified(WindowEvent e){} public void windowDeiconified(WindowEvent e){} public void windowClosed(WindowEvent e){} public void windowActivated(WindowEvent e){} public void windowDeactivated(WindowEvent e){}}
2023-07-28 19:05:501

java JTextField的显示格式

可以使用JFextField中的setHorizontalAlignment(int alignment)方法,API中的解释为:setHorizontalAlignmentpublic void setHorizontalAlignment(int alignment)设置文本的水平对齐方式。有效值包括: JTextField.LEFT JTextField.CENTER JTextField.RIGHT JTextField.LEADING JTextField.TRAILING 当设置对齐方式时,调用 invalidate 和 repaint,并且激发 PropertyChange 事件("horizontalAlignment")。 就是说你如果要想让它左对齐的话就调用setHorizontalAlignment(JTextField.LEFT)方法。不过JTextField是单行文本框是所以没有JTextArea中的设置水平对齐的方法的
2023-07-28 19:06:161

我的Java程序想换一下运行框上面的咖啡图标。谁能帮我看看程序?

用这个方法设置图标this.setIconImage(image);
2023-07-28 19:06:291

简单的计算器程序

用什么语言?
2023-07-28 19:06:405

VB如何在一个textbox 中有居左也有居右的?

‘居中textbox_txt.TextAlign = HorizontalAlignment.Center"居左textbox_txt.TextAlign = HorizontalAlignment.left‘居右textbox_txt.TextAlign = HorizontalAlignment.Righttextbox_txt 是 textbox控件
2023-07-28 19:07:123