
正文
vb.net汽车表盘 winform仪表盘
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
vb制作表盘时钟 并含有数字 要代码
把以下代码保存成一个后缀名为.FRM的文件中,再用VB打开即可。
=====================
VERSION 5.00
Begin VB.Form frmClock
BorderStyle = 1 'Fixed Single
Caption = "钟 by YTY"
ClientHeight = 2550
ClientLeft = 45
ClientTop = 330
ClientWidth = 2505
DrawWidth = 2
Icon = "Form1.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 2550
ScaleLeft = -1000
ScaleMode = 0 'User
ScaleTop = -1000
ScaleWidth = 2505
StartUpPosition = 3 '窗口缺省
Begin VB.Timer Timer1
Interval = 1000
Left = 120
Top = 2280
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 11
Left = 0
TabIndex = 12
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 10
Left = 0
TabIndex = 11
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 9
Left = 0
TabIndex = 10
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 8
Left = 0
TabIndex = 9
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 7
Left = 0
TabIndex = 8
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 6
Left = 0
TabIndex = 7
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 5
Left = 0
TabIndex = 6
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 4
Left = 0
TabIndex = 5
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 3
Left = 0
TabIndex = 4
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 2
Left = 0
TabIndex = 3
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 1
Left = 0
TabIndex = 2
Top = 0
Width = 375
End
Begin VB.Label Label2
Caption = "Label2"
Height = 375
Index = 0
Left = 960
TabIndex = 1
Top = 120
Width = 375
End
Begin VB.Label Label1
Caption = "Label1"
BeginProperty Font
Name = "Arial"
Size = 12
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 615
Left = 0
TabIndex = 0
Top = 1800
Width = 2655
End
End
Attribute VB_Name = "frmClock"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim h As Integer, m As Integer, s As Integer, t
Const pi As Double = 3.14159265358979
Private Sub Form_Load()
Timer1.Interval = 1000
Me.ScaleLeft = -1000
Me.ScaleTop = -1000
For i = 0 To 11
Label2(i).AutoSize = True
Label2(i).Caption = i + 1
Label2(i).Left = 700 * Cos((i * 30 - 60) * pi / 180) - 80
Label2(i).Top = 700 * Sin((i * 30 - 60) * pi / 180) - 100
Next
End Sub
Private Sub Label1_Click()
t = InputBox("请输入时间")
If IsDate(t) = True Then
Label1.Caption = t
Timer1.Enabled = False
Refresh
For i = 1 To 60
PSet (600 * Cos(i * 6 * pi / 180), 600 * Sin(i * 6 * pi / 180)), vbBlack
Next
h = Format(t, "h")
m = Format(t, "n")
s = Format(t, "s")
Line (0, 0)-(300 * Cos(h * pi / 6 - pi / 2), 300 * Sin(h * pi / 6 - pi / 2)), vbRed
Line (0, 0)-(500 * Cos(m * pi / 30 - pi / 2), 500 * Sin(m * pi / 30 - pi / 2)), vbBlue
Line (0, 0)-(600 * Cos(s * pi / 30 - pi / 2), 600 * Sin(s * pi / 30 - pi / 2)), vbGreen
End If
End Sub
Private Sub Timer1_Timer()
Refresh
For i = 1 To 60
PSet (600 * Cos(i * 6 * pi / 180), 600 * Sin(i * 6 * pi / 180)), vbBlack
Next
Label1.Caption = Now
h = Format(Now, "h")
m = Format(Now, "n")
s = Format(Now, "s")
Line (0, 0)-(300 * Cos(h * pi / 6 - pi / 2), 300 * Sin(h * pi / 6 - pi / 2)), vbRed
Line (0, 0)-(500 * Cos(m * pi / 30 - pi / 2), 500 * Sin(m * pi / 30 - pi / 2)), vbBlue
Line (0, 0)-(600 * Cos(s * pi / 30 - pi / 2), 600 * Sin(s * pi / 30 - pi / 2)), vbGreen
End Sub
相关问答
Q1: 求用VB 与仪表通讯程序
'人人为vb.net汽车表盘我vb.net汽车表盘,vb.net汽车表盘我为人人
'枕善居汉化收藏整理
'发布日期vb.net汽车表盘:2007/09/09
'描 述vb.net汽车表盘:仪表盘方式显示CPU和硬盘温度及系统信息
'网 站: (VB6源码博客)
'网 站: (VB.NET源码博客,主要基于.NET2005)
'ADOINFO - a Programm to Monitor the Ressource Usage (C) by TETKOduma
'
'with Car-like Gauges as Displays for:
' CPU MHZ
' CPU Usage as %
'CPU Temperature in Celsius
'HDD Temperature and S.M.A.R.T infos
'Ram USage
'and Battery load state
'This is quite usefull for Notebook users like me
'It's Tipcal for me that i dont like the
'the normal Forms and Designs, so it's Skinned again
'I Use the Smart Information for the Harddisk Temperature
Function GetDriveTemp()
Dim drv_info As DRIVE_INFO
drv_info = GetDriveInfo(0)
With drv_info
If .bDriveType = 0 Then Label2.Caption = "[无可用信息]"
If .bDriveType = 2 Then Label2.Caption = "[ATAPI 驱动器 - 无可用信息]"
If .bDriveType = 1 Then
For i = 0 To UBound(.Attributes)
If Trim$(.Attributes(i).AttrID) = "194" Then GetDriveTemp = (.Attributes(i).Raw(0)): Exit Function
Next i
End If
End With
End Function
'The Information Scrollab at the Bottom, used to Display now the SMART Information
Sub LAufschrift()
Dim drv_info As DRIVE_INFO
drv_info = GetDriveInfo(0)
With drv_info
If .bDriveType = 0 Then Label2.Caption = "[无可用信息]"
If .bDriveType = 2 Then Label2.Caption = "[ATAPI 驱动器 - 无可用信息]"
If .bDriveType = 1 Then
MsgScroller1.AddItem "模式:" vbTab vbTab + Trim$(.Model) + " "
MsgScroller1.AddItem "序号:" vbTab vbTab + Trim$(.SerialNumber) + " "
MsgScroller1.AddItem "固件: " vbTab + Trim$(.FirmWare) + " "
MsgScroller1.AddItem "属性: " + "NAME [Value] [Treshold] [WorstValue] [RAW] "
For i = 0 To UBound(.Attributes)
MsgScroller1.AddItem "[" + Trim$(.Attributes(i).AttrID) + "] " + Trim$(.Attributes(i).AttrName) + " " + CStr(.Attributes(i).AttrValue) + " " + Trim$(.Attributes(i).ThresholdValue) + " " + Trim$(.Attributes(i).WorstValue) + " " + Trim$(.Attributes(i).Raw(0)) + " "
Next i
End If
End With
End Sub
Private Sub Form_Load()
Dim Ret As Long
'Dim Ret As Long
'Set the window style to 'Layered'
Ret = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
Ret = Ret Or WS_EX_LAYERED
SetWindowLong Me.hwnd, GWL_EXSTYLE, Ret
'Set the opacity of the layered window to 200
SetLayeredWindowAttributes Me.hwnd, 0, 240, LWA_ALPHA
'X = Form1.Width / 2: Y = Form1.Height / 2
'Query anlegen und Handle darauf ermitteln
RetVal = PdhOpenQuery(0, 1, hQuery)
If RetVal 0 Then
MsgBox "获取信息失败!", vbExclamation, "提示!"
End
End If
'Performance-Counter definieren
RetVal = PdhVbAddCounter(hQuery, "\Prozessor(0)\Prozessorzeit (%)", hCounter) 'German OS
If RetVal 0 Then
RetVal = PdhVbAddCounter(hQuery, "\Processor(0)\% Processor Time", hCounter) ' English OS
If RetVal 0 Then
MsgBox "获取信息失败!", vbExclamation, "提示!"
PdhCloseQuery hQuery 'Query im Fehlerfall wieder schlie遝n
End
End If
End If
'CPU Infos ermitteln via WMI !Slow!
CPU ' We do this Once at Start
HDAnz = ListDrives 'Die Anzahl der Laufwerke holen
xP = 0
iDir = 4
Unload splash2
Call LAufschrift 'Fill the Bottom Status Bar with Information
End Sub
Private Sub Form_Unload(Cancel As Integer)
PdhCloseQuery hQuery 'Query wieder schlie遝n
End Sub
'CarComputer like Display With Wordwrap Function
'Input: PictureBox, LeftTop Position with X,Y, Wide, height, BackgroundColor, ForegroundColor, Text
Sub CarComp(Pic As PictureBox, x, y, G, G1, fa, fa2, Text)
X1 = 0
y1 = 0
'Drawing the BAckground with Line and BF Option (B for Box, F for FILLED)
If fa fa2 Then
Pic.Line (x, y)-(x + G, y + G1), fa, BF
End If
'Now Setting the Color for the Text and right Textsize
Pic.ForeColor = fa2
Pic.FontSize = 10
' Draw the Text on our little Display
For i = 1 To Len(Text)
s = Mid$(Text, i, 1)
A = Pic.TextWidth(s)
B = Pic.TextHeight(s)
Pic.CurrentX = x + X1
Pic.CurrentY = y + y1
If s = Chr$(12) Then
X1 = 0
y1 = y1 + B
If y1 G1 Then Exit Sub
Else
Pic.Print s
X1 = X1 + A
If X1 = G Then X1 = 0: y1 = y1 + B: If y1 G1 Then Exit Sub
End If
Next i
End Sub
' Super Gauge Car like Speed Display with Leds
Sub SGauge(Pic As PictureBox, x, y, G, fa, Wert, Text)
Dim X1, X2, x3, y1, y2, y3 As Double
PI = 3.1415926543 'Pi
Z = 10
XT = 0 '
G1 = Int(G / 100) 'Our Mesarement ist %, so we build the unit
Gr = G1 * 70 'Z3 is the Radius of the Text, The lines starts from
Z1 = G1 * 110
Z2 = G1 * 130
Z3 = G1 * 90 'Radius Z2 to to radius of Z3
F1 = G1 - 2
If F1 10 Then F1 = 10 'We care about Font Size, should not be smaller then 10
Pic.FontSize = F1 'Setting the Font
Pic.DrawWidth = 1 'Starting with line a normal thick line
Pic.Circle (x, y), Gr, fa, 5.8, 4# 'Drawing in the inner Circle
A1 = (1.78 * PI) - ((((1.78 * PI) - 1) / 100) * Wert) 'Changing the Value in Wert to an angle
r = 0 'Starting Color is Black
For i = 1.78 * PI To 1 Step -0.0455
X1 = x + Int(sIn(i) * Z1)
y1 = y + Int(Cos(i) * Z1) 'Line From Point
X2 = x + Int(sIn(i) * Z2)
y2 = y + Int(Cos(i) * Z2) 'Line to Point
x3 = x + Int(sIn(i) * Z3)
y3 = y + Int(Cos(i) * Z3) 'Postion of Text
If A1 = i Then 'if our Value Angel is smaler or Equal then bright LEDs
If Wert 70 Then fru = H6600 + Wert * 2 Else fru = H33 + Wert * 2
Pic.DrawWidth = 2 'a biger Line is like a LED ;-)
Else
Pic.DrawWidth = 2 'the Small dark line means the LED is off
fru = 0
End If
If Z = 10 Then 'Every Ten line we draw a longer White Line in the Gauge
Pic.DrawWidth = 2
Pic.CurrentX = x3 - 40 - Pic.TextWidth(XT) / 2
Pic.CurrentY = y3 - Pic.TextHeight(XT) / 2 'Calculate the Text Position
Pic.ForeColor = fa
Pic.Print XT
XT = XT + 10 'Dawing Gauge Measerment in steps of 10
Pic.Line (X1, y1)-(X2, y2), fa
'AALine pic.hdc, X1, VarPtr(y1), VarPtr(X2), VarPtr(y2), VarPtr(Fa), 2, 100
Else
Pic.Line (X1, y1)-(X2, y2), (r + fru) '
'AALine pic.hdc, VarPtr(X1), VarPtr(y1), VarPtr(X2), VarPtr(y2), VarPtr(r + fru), 2, 100
End If
Z = Z + 1
If Z 10 Then Z = 1
r = H6000
Next i
Pic.FontSize = 8
Pic.CurrentX = x - (Pic.TextWidth(Text) / 2)
Pic.CurrentY = y + G1 * 80
Pic.Print Text
End Sub
'Draws a horizontal Bar, like a Progressbar
Sub Balken(Pic As PictureBox, x, y, G, D, fa, Wert, Text)
Pic.DrawWidth = 1
xf = Pic.TextWidth(Text) + 40
'Wert = 90
Pic.CurrentX = x
Pic.CurrentY = y - 30
Pic.ForeColor = fa
Pic.Print Text
Pic.Line (x + xf, y)-(x + xf + G, y + D), fa, B
G2 = G - 40
D2 = D - 40
L = Int((G2 / 100) * Wert)
If Wert 85 Then fa2 = H10000 Else fa2 = H1
X2 = x + 20 + xf
x3 = x + xf + L
For i = 1 To D2 / 2 Step 3
y2 = y + i + 20
'F3 = ((90 + I) * fa2 + H444444)
F3 = RGB(50, 160 + i, 50)
Pic.Line (X2, y2)-(x3, y2), F3
Next i
For i = 1 To D2 / 2 Step 3
y2 = y + (D2 / 2 + i) + 20
'F3 = ((90 + (D2 / 2 - I)) * fa2 + H444444)
F3 = RGB(50, 160 - i, 50)
Pic.Line (X2, y2)-(x3, y2), F3
Next i
End Sub
Sub Balken2(Pic As PictureBox, x, y, G, D, fa, Wert, Text)
Pic.FontSize = 8
Pic.DrawWidth = 1
L = Int((G / 100) * Wert)
xf = Pic.TextHeight(Text) + 40
XB = Pic.TextWidth(Text) / 2
Pic.CurrentX = x - XB
Pic.CurrentY = y - xf - 20
Pic.ForeColor = fa
Pic.Print Str$(Wert) + Text
'pic.Line (x, y)-(x + D, y + g + 14), 0, BF
Pic.Line (x, y)-(x + D, y + G + 14), fa, B
G2 = G - 40
D2 = D - 40
L = Int((G2 / 100) * Wert)
L = Int((G2 / 100) * Wert)
If Wert 85 Then fa2 = H10000 Else fa2 = H1
X2 = x + D
y3 = y + G
For i = L To 1 Step -1
F3 = H882222 + (i / 6)
y3 = y + G - i
Pic.Line (x + 10, y3)-(x + D - 10, y3), F3
Next i
For i = L To 100
y3 = y + G - i
Pic.Line (x + 10, y3)-(x + D - 10, y3), o
Next i
End Sub
'Gauge Type 1
Sub DrawGauge1(Pic As PictureBox, x, y, G, fa, Text)
PI = 3.1415926543
Z = 5
XT = 0
G1 = Int(G / 100)
Gr = G1 * 70
Z1 = G1 * 110
Z2 = G1 * 130
Z3 = G1 * 90
F1 = G1 - 2
If F1 10 Then F1 = 10
Pic.FontSize = F1
'Pic.Caption = Str$(g1) + " " + Str$(R)
Pic.Circle (x, y), Gr, fa, 5.8, 4#
For i = 1.78 * PI To 1 Step -0.091
X1 = x + Int(sIn(i) * Z1)
y1 = y + Int(Cos(i) * Z1)
X2 = x + Int(sIn(i) * Z2)
y2 = y + Int(Cos(i) * Z2)
x3 = x + Int(sIn(i) * Z3)
y3 = y + Int(Cos(i) * Z3)
If Z = 5 Then
Pic.DrawWidth = 2
Pic.CurrentX = x3 - 40 - Pic.TextWidth(XT) / 2
Pic.CurrentY = y3 - Pic.TextHeight(XT) / 2
Pic.ForeColor = fa
Pic.Print XT
XT = XT + 10
Else
Pic.DrawWidth = 1
End If
Z = Z + 1
If Z 5 Then Z = 1
Pic.Line (X1, y1)-(X2, y2), fa
Next i
Pic.FontSize = 8
Pic.CurrentX = x - (Pic.TextWidth(Text) / 2)
Pic.CurrentY = y + G1 * 80
Pic.Print Text
End Sub
Q2: VB.NET如何让仪表指针绕某点旋转
你把问题想简单点,直接在PANEL空间上使用GD+画指针就行了。算出两点划线还不容易么?用图片的话需要旋转,而且锯齿非常严重@!
Q3: 怎样用vb.net作一个指针转动的钟表?(可设置时间日期,有闹铃功能)
你需要会用GDI+,也就是那个System.Drawing命名空间下的类.
给你说个思路,设Timer,到时间就用Form.Invalidate()函数重画窗口,在重画窗口的Form_Paint事件下面编写代码得到当前时间,再根据当前时间用GDI+画时钟.
Q4: vb.net开发简单的时钟程序??高手救救我!
就
是
这
个
了
vb.net汽车表盘!
Hand类的代码vb.net汽车表盘:
Public MustInherit Class Hand
Protected gp As GraphicsPath = New GraphicsPath()
Protected gpBase As GraphicsPath = Nothing
Protected midX As Integer = 150 ‘默认的窗体
Protected midY As Integer = 150 ‘中心位置
‘构造器vb.net汽车表盘,得到窗体中心位置
Public Sub New(ByVal theForm As Form1)
midX = (theForm.ClientRectangle.Left + theForm.ClientRectangle.Right) / 2
midY = (theForm.ClientRectangle.Top + theForm.ClientRectangle.Bottom) / 2
End Sub
MustOverride Sub Transform(ByVal d As DateTime)
‘绘制指针路径
Overridable Sub Draw(ByVal g As Graphics)
Dim aPen As Pen = New Pen(Brushes.Black, 4F)
g.DrawPath(aPen, gp)
g.FillPath(Brushes.Black, gp)
aPen.Dispose()
End Sub
‘使用矩阵实现路径(gp)的旋转
Public Sub Rotate(ByVal angle As Double)
gp = CType(gpBase.Clone(), GraphicsPath)
Dim mTransform As Matrix = New Matrix()
mTransform.RotateAt(CType(angle,Single),NewPointF(midX,midY))
gp.Transform(mTransform)
End Sub
End Class
为了节省篇幅vb.net汽车表盘,上面的代码省略了引入命名空间的语句。
下面是分针(MinuteHand)类的定义:
Public Class MinuteHand
Inherits Hand
‘构造器,生成绘制分针的路径(gp)
Public Sub New(ByVal myForm As Form1)
MyBase.New(myForm)
gp.AddLine(midX, midY, midX, 45)
gp.AddLine(midX, 45, midX - 3, 50)
gp.AddLine(midX - 3, 50, midX + 3, 50)
gp.AddLine(midX + 3, 50, midX, 45)
gpBase = CType(gp.Clone(), GraphicsPath)
End Sub
‘Transform方法取得系统当前时间,并旋转时钟指针。
Public Overrides Sub Transform(ByVal d As DateTime)
Dim minuteTime As Double = (CDbl(d.Minute) + CDbl(d.Second / 60))
Dim angle As Double = (CDbl(minuteTime) / 60) * 360
Rotate(angle)
End Sub
End Class
对所有的指针旋转的方法都是相同的,因此在基类中实现。由于时针和秒针的实现与分针相似,所不同者,只在于构造器中绘制的指针路径不同和Transform方法中转动的角度不同,在这里就不在赘述了。
另外还需要提一下的是画时钟表面的代码,时钟表面用ClockFace类来实现。这个类首先画一个圆代表时钟,然后画上米老鼠的图案,最后在相应的位置画上数字1~12代表12个小时。
Public Sub Draw(ByVal g As Graphics)
DrawClockFace(g)
DrawImage(g)
DrawNumbers(g)
DrawPin(g)
End Sub
下面是ClockFace类的属性:
Private ClockRectangle As Rectangle
Private ClockFont As Font = New Font("Arial", 12)
Private midPoint As Point
Private ClockImage As Bitmap
Private Const IMAGEX As Integer = 50
Private Const IMAGEY As Integer = 50
DrawClockFace方法用来画时钟表面:
Private Sub DrawClockFace(ByVal g As Graphics)
g.FillEllipse(Brushes.White, ClockRectangle.Left + 10, ClockRectangle.Top + 10, ClockRectangle.Width - 20, ClockRectangle.Height - 20)
g.DrawEllipse(Pens.Black, ClockRectangle.Left + 10, ClockRectangle.Top + 10, ClockRectangle.Width - 20, ClockRectangle.Height - 20)
End Sub
然后用Graphics对象的DrawImage方法画出米老鼠的图片:
Private Sub DrawImage(ByVal g As Graphics)
Dim nWidth As Integer = ClockImage.Width
Dim nHeight As Integer = ClockImage.Height
Dim destRect As Rectangle = New Rectangle(midPoint.X - IMAGEX / 2, midPoint.Y - IMAGEY / 2, IMAGEX, IMAGEY)
g.DrawImage(ClockImage, destRect)
End Sub
数字在时钟上的位置是用sin和cos函数计算的:
Private Sub DrawNumbers(ByVal g As Graphics)
Dim count As Integer = 1
Dim a As Double
For a = 0 To 2 * Math.PI Step 2 * Math.PI / 12
Dim x As Double = (ClockRectangle.Width - 70) / 2 * Math.Cos(a - Math.PI / 3) + (ClockRectangle.Width - 70) / 2 + 25
Dim y As Double = (ClockRectangle.Width - 70) / 2 * Math.Sin(a - Math.PI / 3) + (ClockRectangle.Width - 70) / 2 + 20
g.DrawString(Convert.ToString(count), ClockFont, Brushes.Black, CType(x, Single), CType(y, Single), New StringFormat())
count += 1
Next
End Sub
最后是窗体文件(Form1.vb):
Public Class Form1
Inherits System.Windows.Forms.Form
Private MyMinuteHand As MinuteHand
Private MyHourHand As HourHand
Private MySecondHand As SecondHand
Private TheClockFace As ClockFace
Private FirstTick As Boolean = False
‘在窗体的OnPaint事件中取得Graphics对象
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
If (FirstTick = False) Then Exit Sub
Dim g As Graphics = e.Graphics
TheClockFace.Draw(g)
MyHourHand.Draw(g)
MyMinuteHand.Draw(g)
MySecondHand.Draw(g)
TheClockFace.DrawPin(g)
End Sub
‘计时器事件
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
MySecondHand.Transform(DateTime.Now)
MyHourHand.Transform(DateTime.Now)
MyMinuteHand.Transform(DateTime.Now)
FirstTick = True
Invalidate()
Q5: 我想请问一下VB的仪表盘控件是VB自带的吗?没有的话能给我一个下载地址吗
1、经过网友的综合评价vb.net汽车表盘,此条内容绝大部分网友认为较好vb.net汽车表盘,您可以详细参考下vb.net汽车表盘,具体如下: vb不带的,vb.net汽车表盘你可以自己写
关于vb.net汽车表盘和winform仪表盘的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








