'这是一个示例 请增加一个Label1的标签。一个Timer1的时间控件Option Explicit Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal pFileName As String) As Long'************************************* '目的:从Ini文件中读取数据
'输入: FileName 文件名 ' AppName 项目名 ' In_Key 键名
'返回: 取得给定键名上的数据
'*************************************Public Function GetIniStr(ByVal FileName As String, ByVal AppName As String, ByVal in_Key As String) As String On Error GoTo GetIniStrErr If VBA.Trim(in_Key) = "" Then GoTo GetIniStrErr End If Dim GetStr As String GetStr = VBA.String(128, 0) GetPrivateProfileString AppName, in_Key, "", GetStr, 256, FileName GetStr = VBA.Replace(GetStr, VBA.Chr(0), "") If GetStr = "" Then GoTo GetIniStrErr Else GetIniStr = GetStr GetStr = "" End If Exit Function GetIniStrErr: Err.Clear GetIniStr = "" GetStr = "" End FunctionPrivate Sub Form_Load() '设定有一个ini文件。 '文件名为 C:\Data.ini '里面的内容为 '[Key] 'Data=这里是示例文本
Dim FileName As String Dim AppName As String Dim in_Key As String
End SubPrivate Sub oTimMove_Timer() If oLblDisplay.Left + oLblDisplay.Width < 0 Then oLblDisplay.Left = oLblBack.Width Else oLblDisplay.Left = oLblDisplay.Left - 20 End If
End Sub
我有个源代码 可以达到想MTV那样 扣字效果 而且可以叠加到视频上
参考一楼代码,没能全部显示DATA,说明DATA数据比较长,你将label1的尺寸属性设置自动
1楼的大虾给你的代码完全正确,我测试过了.我估计可能是你的ini文件方式错了.按1楼的方式去做首先在C盘建一个data.ini的文件,里面的内容为: [Key] data = adkfjgfjgjgjdfjd 这样做就完全显示出来了.
'这是一个示例 请增加一个Label1的标签。一个Timer1的时间控件Option Explicit
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal pFileName As String) As Long'*************************************
'目的:从Ini文件中读取数据
'输入: FileName 文件名
' AppName 项目名
' In_Key 键名
'返回: 取得给定键名上的数据
'*************************************Public Function GetIniStr(ByVal FileName As String, ByVal AppName As String, ByVal in_Key As String) As String
On Error GoTo GetIniStrErr
If VBA.Trim(in_Key) = "" Then
GoTo GetIniStrErr
End If
Dim GetStr As String
GetStr = VBA.String(128, 0)
GetPrivateProfileString AppName, in_Key, "", GetStr, 256, FileName
GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")
If GetStr = "" Then
GoTo GetIniStrErr
Else
GetIniStr = GetStr
GetStr = ""
End If
Exit Function
GetIniStrErr:
Err.Clear
GetIniStr = ""
GetStr = ""
End FunctionPrivate Sub Form_Load()
'设定有一个ini文件。
'文件名为 C:\Data.ini
'里面的内容为
'[Key]
'Data=这里是示例文本
Dim FileName As String
Dim AppName As String
Dim in_Key As String
FileName = "C:\Data.ini"
AppName = "Key"
in_Key = "Data"
Label1.Caption = GetIniStr(FileName, AppName, in_Key)
Label1.AutoSize = TrueEnd SubPrivate Sub Form_Resize()
Label1.Top = 0 '此处设置在上方.你可以通过它的值来设置位置
Label1.Left = Me.Width
Timer1.Enabled = True
Timer1.Interval = 200
End SubPrivate Sub Timer1_Timer()
Label1.Left = Label1.Left - 100
If Label1.Left < -Label1.Width Then
Label1.Left = Me.Width
End If
End Sub
命名oLblBack、oLblDisplay、oTimMove
设oLblDisplay的backstyle 0,boderstyle 0,
oTimMove的interval 200Private Sub Form_Load() Me.Hide
Me.Top = 400
Me.Left = Screen.Width / 3 * 2
Me.Show
End SubPrivate Sub oTimMove_Timer() If oLblDisplay.Left + oLblDisplay.Width < 0 Then
oLblDisplay.Left = oLblBack.Width
Else
oLblDisplay.Left = oLblDisplay.Left - 20
End If
End Sub
[Key]
data = adkfjgfjgjgjdfjd
这样做就完全显示出来了.