vahe_2000
@vahe_2000

Visual Basic метод или операция не осуществляется?

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        OpenFileDialog1.Title = "Select File"
        OpenFileDialog1.Filter = "All files(*.*)|*.*"
        OpenFileDialog1.CheckPathExists = "True"
        OpenFileDialog1.CheckFileExists = "True"

    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        OpenFileDialog1.ShowDialog()
        TextBox1.Text = OpenFileDialog1.FileName
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Try
            If TextBox1 = Acct_NoTextbox.Text Then
                MsgBox("Select file for get size!")
            Else
                If System.IO.File.Exists(TextBox1.Text) = True Then
                    Dim file As System.IO.FileInfo
                    file = My.Computer.FileSystem.GetFileInfo(TextBox1.Text)
                    MessageBox.Show(file.Length & "Bytes")
                Else
                    MsgBox("Thise file is not existes on your PC")
                End If
            End If
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

End Class
  • Вопрос задан
  • 2384 просмотра
Решения вопроса 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
Код вижу, вопрос непонятен. Нужно больше букв, желательно в виде слов, образующих предложения, наполненных смыслом :)

По коду, вот здесь:

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    OpenFileDialog1.ShowDialog()
    TextBox1.Text = OpenFileDialog1.FileName
End Sub


Нет обработчика результата работы диалогового окна. Должно быть что-то типа:

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    ' если пользователь не захотел выбирать файл, выходим
    If Not OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then Return 
    ' пользователь выбрал файл
    TextBox1.Text = OpenFileDialog1.FileName
End Sub


Вот в этой строчке:

If TextBox1 = Acct_NoTextbox.Text Then

Лучше явно указать свойство Text при проверке значения элемента TextBox1:

If TextBox1.Text = Acct_NoTextbox.Text Then

Хотя, если сделать нормальную работу OpenFileDialog, как я показал выше, то в этом условии необходимость вообще должна отпасть. Ну или можно просто проверять наличие значения в TextBox1:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
      Try
            ' если значение TextBox1.Text - пустая строка или Nothing, то
            If String.IsNullOrEmpty(TextBox1.Text) Then 
                MessageBox.Show("Select file for get size!")
                Return ' выходим
            End If

            'можно сразу создать FileInfo и проверять существование файла через него
            Dim file As New System.IO.FileInfo(TextBox1.Text)
            If file.Exists Then
                MessageBox.Show(file.Length & "Bytes")
            Else
                MessageBox.Show("Thise file is not existes on your PC")
            End If
      Catch ex As Exception
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
      End Try
End Sub
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы