不太明白LZ你的程序目的,到底是只能保存一行成问题啊还是需要它只保存一行?要是想获取文本框的某行文字就需要使用API函数 SendMessage
成都创新互联公司成立于2013年,是专业互联网技术服务公司,拥有项目做网站、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元秀英做网站,已为上家服务,为秀英各地企业和个人服务,联系电话:028-86922220
SendMessage函数例子参考:
'以下在Form需一个TextBox,并设定MultiLine = True, 一个Command Button
Private Sub Command1_Click()
Dim str5 As String
str5 = GetaLine(Text1,1) '取得第二行的字串,以0为基底
End Sub
'以下在.Bas
Option Explicit
Const EM_GETLINE = HC4
Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _
lParam As Any) As Long
Public Function GetaLine(Text1 As TextBox, ByVal ntx As Long) As String
Dim str5(255) As Byte '如果您的字串 255 byte请自行增加该Byte Array
Dim str6 As String, i As Long
str5(0) = 255 '字串的前两个Byte存该字串的最大长度
str5(0) = 255
i = SendMessage(Text1.hwnd, EM_GETLINE, ntx, str5(0))
If i = 0 Then
GetaLine = ""
Else
str6 = StrConv(str5, vbUnicode)
GetaLine = Left(str6, InStr(1, str6, Chr(0)) - 1)
End If
End Function
Dim mycon As New SqlConnection(connstrs)
Dim sqlStr As String = "SELECT * FROM [Column] FROM [Table]"
Dim cmd As New SqlCommand(sqlStr, mycon)
Dim reader = cmd.ExecuteReader()
Dim i As Integer = 1
While reader.Read()
Dim txt As New TextBox()
txt.Name = "txt" + i
txt.Size = New Size(100, 20) '文本框大小
txt.Location = New Point(50, i * 20 + 20)'left:50 top:随便写的,自己看着调
txt.Text = reader.GetValue(0).ToString()
Me.Controls.Add(txt) 'Me 可以改为你要添加上去的对象
End While
'未经过运行,自己调试看看能否OK
保存文件的步骤为:
关闭流,特别是写入流
关闭并保存文件
示例代码如下:
Imports System.Windows.Forms
Imports System.IO
Imports System.Text
Sub SaveFileDemo()
'打开文件。如果文件不存在则创建新的文件
Dim myFile As New IO.FileStream("d:\data.txt", _
FileMode.OpenOrCreate, _
FileAccess.Write)
'在文件末尾添加一行
Dim tw As New StreamWriter(myFile)
myFile.Seek(0, SeekOrigin.End)
tw.WriteLine("白刃格斗英雄连英模部队方队亮相阅兵")
'关闭流
tw.Close()
'关闭文件并保存文件
myFile.Close()
End Sub
1、首先,点击保存按钮后应检查文本框内容。
2其次,如果在文本框4中输入的值以400开头则保存反之更改为400。
3、最后,再次检查文本框5如果文本框5中的值为29或31则保存反之则更改即可。