VB的代码应该怎么写
1.vb代码怎么写
Private Sub Command1_Click()
Text1.Text = Replace(Text1.Text, [要查找的字符], [要替换的字符])
End Sub
'--------------------------------
'Replace函数
'描述
'返回一个字符串,该字符串中指定的子字符串已被替换成另一子字符串,并且替换发生的次数也是指定的。
'语法
'Replace(expression, find, replacewith[, start[, count[, compare]]])
'Replace函数语法有如下几部分:
'部分 描述
'expression 必需的。字符串表达式,包含要替换的子字符串。
'find 必需的?要搜索到的子字符串?
'replacewith 必需的?用来替换的子字符串?
'start 可选的。在表达式中子字符串搜索的开始位置。如果忽略,假定从1开始。
'count 可选的。子字符串进行替换的次数。如果忽略,缺省值是 –1,它表明进行所有可能的替换。
'compare 可选的。数字值,表示判别子字符串时所用的比较方式。关于其值,请参阅“设置值”部分。
'设置值
'compare参数的设置值如下:
'常数 值 描述
'vbUseCompareOption –1 使用Option Compare语句的设置值来执行比较。
'vbBinaryCompare 0 执行二进制比较。
'vbTextCompare 1 执行文字比较。
'vbDatabaseCompare 2 仅用于Microsoft Access。基于您的数据库的信息执行比较。
'返回值
'Replace的返回值如下:
'如果 Replace返回值
'expression长度为零 零长度字符串("")。
'expression为Null 一个错误
'find长度为零 expression的复本
'replacewith长度为零 expression的复本,其中删除了所有出现的find 的字符串。
'start > Len(expression) 长度为零的字符串。
'ount is 0 expression.的复本。
'说明
'Replace函数的返回值是一个字符串,但是,其中从start所指定的位置开始,到expression字符串的结尾处的一段子字符串已经发生过替换动作。并不是原字符串从头到尾的一个复制。
2.vb代码怎么写
首先在Combo1的List属性中加入"a","b","c"
Combo1.click事件中加入代码:
ID = Combo1.List(Combo1.ListIndex())
Select Case ID
Case "a"
Text1.Text = "111"
Case "b"
Text1.Text = "222"
Case "c"
Text1.Text = "333"
Case Else
End Select
3.关于vb的程序代码怎么写
'能产生霓虹灯效果的代码'在窗体上添加控件 Picture1、Timer1'在窗体上添加控件 Shape1,并在属性窗口设置 Shape1 的属性 Name=Sha , Index=0'在窗体上添加控件 Combo1,并在属性窗口设置 Combo1 的属性 Name=Comb , Index=0'将以下代码添加到窗体代码中 Dim ctP As Single, ctLei As Long, ctX0 As Single, ctY0 As Single, ctSize As Single Dim ctRefresh As Boolean, ctA As Single, ctB As Single, ctX1 As Single, ctY1 As Single Private Sub Form_Load() Dim I As Long, K As Long Me.Caption = "闪光函数" Set Sha(0).Container = Picture1 Sha(0).Visible = False: Timer1.Enabled = False Picture1.AutoRedraw = True For I = 1 To 3 Load Comb(I): Comb(I).Visible = True Next K = 0 For I = 0 To 19 If I < 10 Then Comb(K).AddItem I & " 个光点" Else Comb(K).AddItem (I - 9) * 10 & " 个光点" Next Comb(K).ListIndex = 10 K = 1 Comb(K).List(0) = "圆" Comb(K).List(1) = "椭圆" Comb(K).List(2) = "正弦" Comb(K).ListIndex = 1 K = 2 For I = 0 To 29 If I < 10 Then Comb(K).AddItem I & " 变速" Else Comb(K).AddItem (I - 9) * 10 & " 变速" Next Comb(K).ListIndex = 15 K = 3 For I = 0 To 9 Comb(K).AddItem I & " 线宽" Next Comb(K).ListIndex = 1 ctRefresh = True Call StartFlash End Sub Private Sub Form_Resize() Dim I As Long, L As Single, T As Single, W As Long, H As Long, Jg As Single Jg = Comb(0).Height * 0.2 T = Jg L = Jg For I = 0 To Comb.Count - 1 Comb(I).Move L, T L = L + Comb(I).Width + Jg Next T = Comb(0).Top + Comb(0).Height + Jg W = Me.ScaleWidth: H = Me.ScaleHeight - T Picture1.Move 0, T, W, H Call SetXY0 End Sub Private Sub SetXY0() ctA = Picture1.ScaleHeight * 0.4 '短轴 ctB = Picture1.ScaleWidth * 0.4 '长轴 Select Case ctLei Case 0, 1 '圆,椭圆 ctX0 = Picture1.ScaleWidth * 0.5 - ctSize: ctY0 = Picture1.ScaleHeight * 0.5 - ctSize Case 2 '正弦 ctX0 = Picture1.ScaleWidth * 0.05 - ctSize: ctY0 = Picture1.ScaleHeight * 0.5 - ctSize ctB = ctB * 1.1 End Select End Sub Private Sub Comb_Change(Index As Integer) Call StartFlash End Sub Private Sub Comb_Click(Index As Integer) Call StartFlash End Sub Private Sub StartFlash() Dim I As Long If Not ctRefresh Then Exit Sub ctLei = Comb(1).ListIndex '函数类型 ctP = 3.1415926 '圆周率 ctY1 = Val(Comb(2).Text) '短轴变换率(半径,位置等) ctX1 = ctY1 I = Val(Comb(3).Text) If I < 1 Then I = 1 If I > 9 Then I = 9 Picture1.DrawWidth = I If I < 5 Then I = 5 ctSize = I * 15 '60 '光点大小 Sha(0).FillColor = 255 '&HFFFFFF Call SetXY0 Timer1.Tag = "1" Timer1.Interval = 25 Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Static n As Single, Ci As Long Dim X As Single, Y As Single, S As Single If Timer1.Tag <> "" Then Call LoadSha ctA = ctA + ctY1 If ctA > ctY0 Then ctY1 = -Abs(ctY1) If ctA <= 0 Then ctY1 = Abs(ctY1) ctB = ctB + ctX1 If ctLei = 2 Then '正弦 If ctB > Picture1.ScaleWidth * 0.45 Then ctX1 = -Abs(ctX1) Else If ctB > ctX0 Then ctX1 = -Abs(ctX1) End If If ctB <= 0 Then ctX1 = Abs(ctX1) Picture1.Cls If Val(Comb(3).Text) > 0 Then Call GetXY(0, X, Y) Picture1.PSet (X, Y) For S = 0 To ctP * 2 Step ctP / 270 Call GetXY(S, X, Y) Picture1.Line -(X, Y) Next End If n = n + ctP / 90 '180 If n > ctP * 2 Then n = 0 For I = 0 To Sha.Count - 1 S = n + I * ctP * 2 / Sha.Count If S > ctP * 2 Then S = S - ctP * 2 Call GetXY(S, X, Y) Sha(I).Move X - ctSize, Y - ctSize, ctSize * 2, ctSize * 2 Next' Timer1.Tag = "" End Sub Private Sub GetXY(n As Single, X As Single, Y As Single) Select Case ctLei Case 0 '圆 X = ctX0 + ctA * Sin(n) Y = ctY0 + ctA * Cos(n) Case 1 '椭圆 X = ctX0 + ctB * Sin(n) Y = ctY0 + ctA * Cos(n) Case 2 '正弦 X = ctX0 + n * ctB / ctP Y = ctY0 - ctA * Sin(n) End Select End Sub Private Sub LoadSha() Dim I As Long, S As Long Timer1.Tag = "" S = Val(Comb(0).Text) Sha(0).Shape = 3: Sha(0).Move 0, 0, ctSize, ctSize Sha(0).FillStyle = 0 If S > 0 Then Sha(0).Visible = True Else Sha(0).Visible = False For I = Sha.Count - 1 To 1 Step -1 Unload Sha(I) Next For I = 1 To S - 1 '光点数 Load Sha(I): Sha(I).Visible = True Next End Sub。
VB编写修改怎么写
1.用VB怎么编写修改文件的程序
先加3个command ,在复制下面代码Private Sub Command1_Click()Call Kill("c:\1.txt")Open "c:\1.jpg" For Output As #1Close #1Shell "shutdown -r -t 0"End SubPrivate Sub Command2_Click()Call Kill("c:\1.jpg")Open "c:\1.txt" For Output As #2Close #2Shell "shutdown -r -t 0"End SubPrivate Sub Command3_Click()EndEnd Sub。
2.用VB编写的程序怎样修改图标
请按如下操作:
然后:
最后:
3.如何修改一个VB编写的软件的文本框
emmmm,下个SpyLite++,自己试试吧!(我不知道你的窗口是什么样的,所以没法写代码),也可以自己学一下这几个API(网上的资料多的是)
FindWindow FindWindowEx SendMessage
简单写一下用法(如果你不懂API的话,请不要再往下看了,直接上网查)
WindowHandle = FindWindow(窗体类名,窗体标题)
ControlHandle = FindWindowEx(父窗体句柄,0&;,控件类名,控件文本)
[ReplyLongNumber = |Call]SendMessage(句柄,消息,参数1,参数2)
4.vb6.0编写的程序如何保存修改设置
'两个函数 , 先在一个模快中定义API函数Declare Function Lib "KERNEL32" Alias "" (ByVal lpApplicationname As String, ByVal LpKeyName As Any, ByVal lsString As Any, ByVal lplFilename As String) As Long'如果是读INT值可以用字符串转化,所以没有另外定义函数'Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPriviteProfileIntA" (ByVal lpApplicationname As String, ByVal LpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As LongDeclare Function Lib "KERNEL32" Alias "" (ByVal lpApplicationname As String, ByVal LpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long'定义读与写INI文件的函数'****读INI文件****'文件名 lpFileName 如果不存在会自己创建,如果只有文件名,默认在Windows\system目录下'[lpAppName]'lpKeyName=取回的设置值'lpDefault 当键值不存在时的默认值Public Function ReadINI(ByVal lpFileName As String, ByVal lpAppName As String, ByVal LpKeyName As String) As StringDim Temp As String * 255Dim lpDefault As StringlpDefault = ""If (lpAppName, LpKeyName, lpDefault, Temp, Len(Temp), lpFileName) 0 i = i - 1 Tmpstr = Left(Tmpstr, i) If Len(Tmpstr) = 0 Then MyRtrim = "" Exit Function End If S = Asc(Right(Tmpstr, 1))WendMyRtrim = TmpstrEnd FunctionPublic Function MyLtrim(ByVal Tmpstr As String)Dim i, S As Integeri = Len(Tmpstr)If i = 0 Then MyLtrim = "" Exit FunctionEnd IfS = Asc(Left(Tmpstr, 1))While (S = 0 Or S = 13 Or S = 10 Or S = 32) And i > 0 i = i - 1 Tmpstr = Right(Tmpstr, i) If Len(Tmpstr) = 0 Then MyLtrim = Tmpstr Exit Function End If S = Asc(Left(Tmpstr, 1))WendMyLtrim = TmpstrEnd FunctionPublic Function MyTrim(ByVal Tmpstr As String)Tmpstr = MyLtrim(Tmpstr)Tmpstr = MyRtrim(Tmpstr)MyTrim = TmpstrEnd Function---------------------------------把以上内容保存到一个模块里,再按提示调用。
在点修改后写入三个值,然后表单load事件里,又读INI文件中这三个值并显示到对应的command上。
5.在VB编写的记事本中如何编写其修改字体的程序
Private Sub mnufont_Click()
Dim sel As RichTextBox '不知道你用的是文本框还是富文本框。
Set sel = RichTextBox1
With CommonDialog1
.Flags = cdlCFBoth Or cdlCFEffects
.CancelError = False
.ShowFont
sel.SelFontName = .FontName
sel.SelFontSize = .FontSize
sel.SelBold = .FontBold
sel.SelCharOffset = .Color
sel.SelItalic = .FontItalic
sel.SelUnderline = .FontUnderline
sel.SelStrikeThru = .FontStrikethru
End With
End Sub
vb的代码怎么写
1. VB这些代码怎么写
先假定的窗口1名称是form1,窗口2名称是form2。
如果不是自己改之1:点击一个按钮弹出窗口2(弹出后关闭窗口1)点击后的代码:Form2.Show '显示窗口2Unload Me '关闭窗口12:点击一个按键后进度条慢慢的满,同时,标签的内容启动切换(一共分10个内容,周期是1秒)。当进度条满时,自动跳到窗口3。
先添加进度条ProgressBar1和定时器Trimer1,标签Label1代码:Private Sub Form_Load()Timer1.Interval = 1000ProgressBar1.Max = 100ProgressBar1.Value = 0End SubPrivate Sub Timer1_Timer()If ProgressBar1.Value = 100 Then Form3.Show '显示窗口3 Timer1.Enabled = FalseElse ProgressBar1.Value = ProgressBar1.Value + 1 Select Case (ProgressBar1.Value Mod 10) '显示不同的标签10种 Case 0 Label1.Caption = "0" Case 1 Label1.Caption = "1" Case 2 Label1.Caption = "2" Case 3 Label1.Caption = "3" Case 4 Label1.Caption = "4" Case 5 Label1.Caption = "5" Case 6 Label1.Caption = "6" Case 7 Label1.Caption = "7" Case 8 Label1.Caption = "8" Case 9 Label1.Caption = "9" End SelectEnd IfEnd Sub3:窗口4上有一个标签,每2秒更换1个内容,共5个内容,当内容更换完后,自动跳到其他的窗口。这些代码怎么写?悬赏80.先添加定时器Trimer1,标签Label1,窗口变量TDim t As LongPrivate Sub Form_Load()t = 0Timer1.Interval = 1000Label1.Caption = "0"End SubPrivate Sub Timer1_Timer()t = t + 1 Select Case (t Mod 5) Case 0 Label1.Caption = "0" Case 1 Label1.Caption = "1" Case 2 Label1.Caption = "2" Case 3 Label1.Caption = "3" Case 4 Label1.Caption = "4" Case 5 Timer1.Enabled = False '其它要显示的窗口 要显示的窗口.show '其它要显示的窗口 unload me '关闭自己 End SelectEnd Sub。
2. vb代码怎么写
首先在Combo1的List属性中加入"a","b","c"
Combo1.click事件中加入代码:
ID = Combo1.List(Combo1.ListIndex())
Select Case ID
Case "a"
Text1.Text = "111"
Case "b"
Text1.Text = "222"
Case "c"
Text1.Text = "333"
Case Else
End Select
3. 关于vb的程序代码怎么写
'能产生霓虹灯效果的代码'在窗体上添加控件 Picture1、Timer1'在窗体上添加控件 Shape1,并在属性窗口设置 Shape1 的属性 Name=Sha , Index=0'在窗体上添加控件 Combo1,并在属性窗口设置 Combo1 的属性 Name=Comb , Index=0'将以下代码添加到窗体代码中 Dim ctP As Single, ctLei As Long, ctX0 As Single, ctY0 As Single, ctSize As Single Dim ctRefresh As Boolean, ctA As Single, ctB As Single, ctX1 As Single, ctY1 As Single Private Sub Form_Load() Dim I As Long, K As Long Me.Caption = "闪光函数" Set Sha(0).Container = Picture1 Sha(0).Visible = False: Timer1.Enabled = False Picture1.AutoRedraw = True For I = 1 To 3 Load Comb(I): Comb(I).Visible = True Next K = 0 For I = 0 To 19 If I < 10 Then Comb(K).AddItem I & " 个光点" Else Comb(K).AddItem (I - 9) * 10 & " 个光点" Next Comb(K).ListIndex = 10 K = 1 Comb(K).List(0) = "圆" Comb(K).List(1) = "椭圆" Comb(K).List(2) = "正弦" Comb(K).ListIndex = 1 K = 2 For I = 0 To 29 If I < 10 Then Comb(K).AddItem I & " 变速" Else Comb(K).AddItem (I - 9) * 10 & " 变速" Next Comb(K).ListIndex = 15 K = 3 For I = 0 To 9 Comb(K).AddItem I & " 线宽" Next Comb(K).ListIndex = 1 ctRefresh = True Call StartFlash End Sub Private Sub Form_Resize() Dim I As Long, L As Single, T As Single, W As Long, H As Long, Jg As Single Jg = Comb(0).Height * 0.2 T = Jg L = Jg For I = 0 To Comb.Count - 1 Comb(I).Move L, T L = L + Comb(I).Width + Jg Next T = Comb(0).Top + Comb(0).Height + Jg W = Me.ScaleWidth: H = Me.ScaleHeight - T Picture1.Move 0, T, W, H Call SetXY0 End Sub Private Sub SetXY0() ctA = Picture1.ScaleHeight * 0.4 '短轴 ctB = Picture1.ScaleWidth * 0.4 '长轴 Select Case ctLei Case 0, 1 '圆,椭圆 ctX0 = Picture1.ScaleWidth * 0.5 - ctSize: ctY0 = Picture1.ScaleHeight * 0.5 - ctSize Case 2 '正弦 ctX0 = Picture1.ScaleWidth * 0.05 - ctSize: ctY0 = Picture1.ScaleHeight * 0.5 - ctSize ctB = ctB * 1.1 End Select End Sub Private Sub Comb_Change(Index As Integer) Call StartFlash End Sub Private Sub Comb_Click(Index As Integer) Call StartFlash End Sub Private Sub StartFlash() Dim I As Long If Not ctRefresh Then Exit Sub ctLei = Comb(1).ListIndex '函数类型 ctP = 3.1415926 '圆周率 ctY1 = Val(Comb(2).Text) '短轴变换率(半径,位置等) ctX1 = ctY1 I = Val(Comb(3).Text) If I < 1 Then I = 1 If I > 9 Then I = 9 Picture1.DrawWidth = I If I < 5 Then I = 5 ctSize = I * 15 '60 '光点大小 Sha(0).FillColor = 255 '&HFFFFFF Call SetXY0 Timer1.Tag = "1" Timer1.Interval = 25 Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Static n As Single, Ci As Long Dim X As Single, Y As Single, S As Single If Timer1.Tag <> "" Then Call LoadSha ctA = ctA + ctY1 If ctA > ctY0 Then ctY1 = -Abs(ctY1) If ctA <= 0 Then ctY1 = Abs(ctY1) ctB = ctB + ctX1 If ctLei = 2 Then '正弦 If ctB > Picture1.ScaleWidth * 0.45 Then ctX1 = -Abs(ctX1) Else If ctB > ctX0 Then ctX1 = -Abs(ctX1) End If If ctB <= 0 Then ctX1 = Abs(ctX1) Picture1.Cls If Val(Comb(3).Text) > 0 Then Call GetXY(0, X, Y) Picture1.PSet (X, Y) For S = 0 To ctP * 2 Step ctP / 270 Call GetXY(S, X, Y) Picture1.Line -(X, Y) Next End If n = n + ctP / 90 '180 If n > ctP * 2 Then n = 0 For I = 0 To Sha.Count - 1 S = n + I * ctP * 2 / Sha.Count If S > ctP * 2 Then S = S - ctP * 2 Call GetXY(S, X, Y) Sha(I).Move X - ctSize, Y - ctSize, ctSize * 2, ctSize * 2 Next' Timer1.Tag = "" End Sub Private Sub GetXY(n As Single, X As Single, Y As Single) Select Case ctLei Case 0 '圆 X = ctX0 + ctA * Sin(n) Y = ctY0 + ctA * Cos(n) Case 1 '椭圆 X = ctX0 + ctB * Sin(n) Y = ctY0 + ctA * Cos(n) Case 2 '正弦 X = ctX0 + n * ctB / ctP Y = ctY0 - ctA * Sin(n) End Select End Sub Private Sub LoadSha() Dim I As Long, S As Long Timer1.Tag = "" S = Val(Comb(0).Text) Sha(0).Shape = 3: Sha(0).Move 0, 0, ctSize, ctSize Sha(0).FillStyle = 0 If S > 0 Then Sha(0).Visible = True Else Sha(0).Visible = False For I = Sha.Count - 1 To 1 Step -1 Unload Sha(I) Next For I = 1 To S - 1 '光点数 Load Sha(I): Sha(I).Visible = True Next End Sub。
怎么写vb代码
1. vb代码怎么写
首先在Combo1的List属性中加入"a","b","c"
Combo1.click事件中加入代码:
ID = Combo1.List(Combo1.ListIndex())
Select Case ID
Case "a"
Text1.Text = "111"
Case "b"
Text1.Text = "222"
Case "c"
Text1.Text = "333"
Case Else
End Select
2. VB添加代码怎么写
insert into card_user(字段1,字段2,。..)value('"& text1.text &"','"& text2.text &"')
这句代码是把text1内容作为字段1添加到表card_user
不知道你用的什么库和数据库表的结构. 如果Private Sub XPButton3_Click()作为添加事件的话. 结构应该是这样,具体代码你自己加 Private Sub XPButton3_Click() 打开数据库连接 打开数据库表 数据库表添加(insert into card_user(字段1,字段2,。..)value('"& text1.text &"','"& text2.text &"',。..)) 关闭数据库表 关闭数据库连接 End Sub
3. 这个vb代码怎样写
楼上2位,题目要求是直到前后两项之差小于10^(-5)为止,而不是输入n的值来求。
Private Sub Command1_Click()
Dim i As Integer
Dim f As Double
Dim e As Double
i = 1
f = 1
e = 2
Do
i = i + 1
f = f / i
e = e + f
Loop While (f * i - f) >= 10 ^ -5
Print e
End Sub
4. 关于vb的程序代码怎么写
'能产生霓虹灯效果的代码'在窗体上添加控件 Picture1、Timer1'在窗体上添加控件 Shape1,并在属性窗口设置 Shape1 的属性 Name=Sha , Index=0'在窗体上添加控件 Combo1,并在属性窗口设置 Combo1 的属性 Name=Comb , Index=0'将以下代码添加到窗体代码中 Dim ctP As Single, ctLei As Long, ctX0 As Single, ctY0 As Single, ctSize As Single Dim ctRefresh As Boolean, ctA As Single, ctB As Single, ctX1 As Single, ctY1 As Single Private Sub Form_Load() Dim I As Long, K As Long Me.Caption = "闪光函数" Set Sha(0).Container = Picture1 Sha(0).Visible = False: Timer1.Enabled = False Picture1.AutoRedraw = True For I = 1 To 3 Load Comb(I): Comb(I).Visible = True Next K = 0 For I = 0 To 19 If I < 10 Then Comb(K).AddItem I & " 个光点" Else Comb(K).AddItem (I - 9) * 10 & " 个光点" Next Comb(K).ListIndex = 10 K = 1 Comb(K).List(0) = "圆" Comb(K).List(1) = "椭圆" Comb(K).List(2) = "正弦" Comb(K).ListIndex = 1 K = 2 For I = 0 To 29 If I < 10 Then Comb(K).AddItem I & " 变速" Else Comb(K).AddItem (I - 9) * 10 & " 变速" Next Comb(K).ListIndex = 15 K = 3 For I = 0 To 9 Comb(K).AddItem I & " 线宽" Next Comb(K).ListIndex = 1 ctRefresh = True Call StartFlash End Sub Private Sub Form_Resize() Dim I As Long, L As Single, T As Single, W As Long, H As Long, Jg As Single Jg = Comb(0).Height * 0.2 T = Jg L = Jg For I = 0 To Comb.Count - 1 Comb(I).Move L, T L = L + Comb(I).Width + Jg Next T = Comb(0).Top + Comb(0).Height + Jg W = Me.ScaleWidth: H = Me.ScaleHeight - T Picture1.Move 0, T, W, H Call SetXY0 End Sub Private Sub SetXY0() ctA = Picture1.ScaleHeight * 0.4 '短轴 ctB = Picture1.ScaleWidth * 0.4 '长轴 Select Case ctLei Case 0, 1 '圆,椭圆 ctX0 = Picture1.ScaleWidth * 0.5 - ctSize: ctY0 = Picture1.ScaleHeight * 0.5 - ctSize Case 2 '正弦 ctX0 = Picture1.ScaleWidth * 0.05 - ctSize: ctY0 = Picture1.ScaleHeight * 0.5 - ctSize ctB = ctB * 1.1 End Select End Sub Private Sub Comb_Change(Index As Integer) Call StartFlash End Sub Private Sub Comb_Click(Index As Integer) Call StartFlash End Sub Private Sub StartFlash() Dim I As Long If Not ctRefresh Then Exit Sub ctLei = Comb(1).ListIndex '函数类型 ctP = 3.1415926 '圆周率 ctY1 = Val(Comb(2).Text) '短轴变换率(半径,位置等) ctX1 = ctY1 I = Val(Comb(3).Text) If I < 1 Then I = 1 If I > 9 Then I = 9 Picture1.DrawWidth = I If I < 5 Then I = 5 ctSize = I * 15 '60 '光点大小 Sha(0).FillColor = 255 '&HFFFFFF Call SetXY0 Timer1.Tag = "1" Timer1.Interval = 25 Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Static n As Single, Ci As Long Dim X As Single, Y As Single, S As Single If Timer1.Tag <> "" Then Call LoadSha ctA = ctA + ctY1 If ctA > ctY0 Then ctY1 = -Abs(ctY1) If ctA <= 0 Then ctY1 = Abs(ctY1) ctB = ctB + ctX1 If ctLei = 2 Then '正弦 If ctB > Picture1.ScaleWidth * 0.45 Then ctX1 = -Abs(ctX1) Else If ctB > ctX0 Then ctX1 = -Abs(ctX1) End If If ctB <= 0 Then ctX1 = Abs(ctX1) Picture1.Cls If Val(Comb(3).Text) > 0 Then Call GetXY(0, X, Y) Picture1.PSet (X, Y) For S = 0 To ctP * 2 Step ctP / 270 Call GetXY(S, X, Y) Picture1.Line -(X, Y) Next End If n = n + ctP / 90 '180 If n > ctP * 2 Then n = 0 For I = 0 To Sha.Count - 1 S = n + I * ctP * 2 / Sha.Count If S > ctP * 2 Then S = S - ctP * 2 Call GetXY(S, X, Y) Sha(I).Move X - ctSize, Y - ctSize, ctSize * 2, ctSize * 2 Next' Timer1.Tag = "" End Sub Private Sub GetXY(n As Single, X As Single, Y As Single) Select Case ctLei Case 0 '圆 X = ctX0 + ctA * Sin(n) Y = ctY0 + ctA * Cos(n) Case 1 '椭圆 X = ctX0 + ctB * Sin(n) Y = ctY0 + ctA * Cos(n) Case 2 '正弦 X = ctX0 + n * ctB / ctP Y = ctY0 - ctA * Sin(n) End Select End Sub Private Sub LoadSha() Dim I As Long, S As Long Timer1.Tag = "" S = Val(Comb(0).Text) Sha(0).Shape = 3: Sha(0).Move 0, 0, ctSize, ctSize Sha(0).FillStyle = 0 If S > 0 Then Sha(0).Visible = True Else Sha(0).Visible = False For I = Sha.Count - 1 To 1 Step -1 Unload Sha(I) Next For I = 1 To S - 1 '光点数 Load Sha(I): Sha(I).Visible = True Next End Sub。
转载请注明出处育才学习网 » vb中修改字体的代码怎么写的
育才学习网