字符串更新

lovetsfuer 2007-10-30 10:43:58
Private Sub picWelcome_Click()

Dim strFileFullName As String
Dim vFillPName As Variant
Dim vFillTName As Variant
Dim strNewName As String
Dim strOldName As String

On Error Resume Next

commPicture.Filter = "*.jpg |*.JPG,*.bmp |*.bmp,*.JPEG|*.jpeg,*.PNG|*.png,*.GIF|*.gif"
commPicture.ShowOpen
strFileFullName = commPicture.FileName
' If FN <> "" Then
' picWelcome.Picture = LoadPicture(FN)
' End If

vFillPName = Split(strFileFullName, "\")
If strFileFullName <> "" Then
strNewName = vFillPName(UBound(vFillPName))
End If
If txtSignOnPic.Text <> "" Then
vFillTName = Split(txtSignOnPic.Text, "\")
strOldName = vFillTName(UBound(vFillTName))
End If

txtSignOnPic.Text = Replace(txtSignOnPic.Text, strOldName, strNewName)
‘txtSignOnPic.Text = strNewName -------这句可以执行但是不能达到效果

End Sub

txtSignOnPic.Text = Replace(txtSignOnPic.Text, strOldName, strNewName)
我用了Replace函数进行更新字符串,语句执行后txtSignOnPic.Text值没有更新,谁给看看。
...全文
87 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ankeyfu 2007-10-30
  • 打赏
  • 举报
回复
Private Sub picWelcome_Click()

Dim strFileFullName As String
Dim vFillPName As Variant
Dim vFillTName As Variant
Dim strNewName As String
Dim strOldName As String

On Error Resume Next

commPicture.Filter = "*.jpg |*.JPG|*.bmp|*.bmp|*.JPEG|*.jpeg|*.PNG|*.png|*.GIF|*.gif"
commPicture.ShowOpen
strFileFullName = commPicture.FileName
' If FN < > "" Then
' picWelcome.Picture = LoadPicture(FN)
' End If

vFillPName = Split(strFileFullName, "\")
If strFileFullName <> "" Then
strNewName = vFillPName(UBound(vFillPName))
End If
If txtSignOnPic.Text <> "" Then
vFillTName = Split(txtSignOnPic.Text, "\")
strOldName = vFillTName(UBound(vFillTName))
End If

txtSignOnPic.Text = Replace(txtSignOnPic.Text, strOldName, strNewName)
'txtSignOnPic.Text = strNewName -------这句可以执行但是不能达到效果

End Sub
vbman2003 2007-10-30
  • 打赏
  • 举报
回复
代码看不出问题,你debug.print txtSignOnPic.Text; strOldName; strNewName
看看有没有问题
lovetsfuer 2007-10-30
  • 打赏
  • 举报
回复
txtSignOnPic.Text = Replace(txtSignOnPic.Text, strOldName, strNewName)
中的 strNewName已经取到新值
vansoft 2007-10-30
  • 打赏
  • 举报
回复
msgbox replace("d:\home\a.jpg","a.jpg","b.jpg")

看看出来的结果对不对,对的话,就是你上面的代码有问题,而不是rplace函数有问题。
lovetsfuer 2007-10-30
  • 打赏
  • 举报
回复
txtSignOnPic.text 存的是图片的路径,路径是不让修改的,存数据库里,每次都是更新文件名路径不变,
d:\home\a.jpg a.jpg是stroldname
d:\home\b.jpg b.jgp是steNewname
选择图片后b后txtSignOnPic.text=d:\home\a.jpg a.jpg---》d:\home\b.jpg b.jgp
就是这面简单,越是简单越复杂了。
daisy8675 2007-10-30
  • 打赏
  • 举报
回复
你的stroldname和steNewname都代表什么

你就干脆说你想干啥得了。
lovetsfuer 2007-10-30
  • 打赏
  • 举报
回复
把strOldName替换成 strNewName
daisy8675 2007-10-30
  • 打赏
  • 举报
回复
我个人并不明白你要做一次什么事情?
你要更新什么所谓的字符串

vbman2003 2007-10-30
  • 打赏
  • 举报
回复
在你的代码最后加上一行:
debug.print txtSignOnPic.Text; strOldName; strNewName
执行后在立即窗口看看这几个变量的值是不是正确的

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧