Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > можно ли сохранять и открывать форму с данными?


Автор: Jr13san 31.7.2008, 16:41
Привет всем.
У меня возникла проблемка с сохранением формы в "любой формат".
У меня имеется форма(Form1), а на ней:
CommonDialog1, Textbox, меню с названием: "Сохранить форму" и меню с назв.: "Открыть форму"

свойство "filter" для CommonDialog1:
Форма (*.form)|*.form|Все файлы (*.*)|*.*.

Написав в Textbox любой текст, я начинаю сохранять форму...(ниже приведён код сохр. формы)

____________________________
Код

Private Sub SaveForm_Click()
    Dim F As Long, H As String
     With Form1.CommonDialog1
        .FileName = vbNullString
        .Flags = 0
        .ShowSave
        If .Flags = 0 Then Exit Sub
        NmFile = .FileName
    End With
    If FileName <> NmFile Then
        On Error Resume Next
        F = FileLen(NmFile)
        If Err = 0 Then
            H = "Файл уже существует." & vbCrLf & "Заменить его?"
            If MsgBox(H, , vbCritical, "Ошибка") = vbNo Then Exit Sub
        End If
        F = 1
    End If
    On Error Resume Next
    Open NmFile For Output As #1
        If Err Then
            If Err = 75 Then
                MsgBox "Файл защищён от записи.", vbCritical, "Ошибка"
            Else
                MsgBox "Файл сохранить не возможно.", vbCritical, "Ошибка"
            End If
        Else
            With Form1
                Print #1, Form1
                               If F Then
                    NameFile = NmFile
                    F = InStrRev(NmFile, "\")
                    .Caption = Right$(NmFile, Len(NmFile) - F)
                End If
            End With
        End If
    Close #1
End Sub
____________________________
Код

Private Sub OpenForm_Click()
    Dim F As Long, NmFile As String
    With Form1.CommonDialog1
        .FileName = vbNullString
        .Flags = 0
        .ShowOpen
        If .Flags = 0 Then Exit Sub
        NmFile = .FileName
    End With
    On Error Resume Next
    Open NmFile For Input As #1
    If Err Then
        If Err = 53 Then
             MsgBox "Файл не найден.", vbCritical, "Ошибка"
         Else
             MsgBox "Файл открыть не возможно.", vbCritical, "Ошибка"
         End If
    Else
        With Form1
            F = InStrRev(NmFile, "\")
           Form1.Caption = Right$(NmFile, Len(NmFile) - F)
        End With
    End If
    Close #1
End Sub

Для проверки нужно открыть форму...
И вот тут я встрял...
Форма не открывается или открывается, но данных, которые я вводил в Textbox - нет.
Мне нужно, чтобы форма и сохранялась вместе с данными, которые я вводил и открывалась с этими же данными...
Кто знает как можно это сделать, - отзовитесь...

Автор: Akina 31.7.2008, 16:56
Модератор: Используйте тег Код!

Я не понял... вы хотите, чтобы рантайм-информация сохранялась в макете? не бывает.

Автор: Jr13san 1.8.2008, 10:34
Т.е. нельзя сохранять форму с данными...
мдя....
Тогда ладно. Можно закрывать тему.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)