Сохранить Line

Тема в разделе "Visual Basic", создана пользователем kaskad755, 27 мар 2009.

  1. kaskad755

    kaskad755 Active Member

    Регистрация:
    13 фев 2009
    Сообщения:
    34
    Симпатии:
    0
    Господа подскажите возможно ли сохранить в текстовов файле (*.txt) линию (Line), и потом вернуть её на форму???
     
  2. alex77755

    alex77755 Well-Known Member

    Регистрация:
    15 фев 2009
    Сообщения:
    128
    Симпатии:
    0
    А что мешает сохранить координаты линии в текстовом файле и при открытии формы или по кнопке считать их и загрузив линию присвоить ей координаты, считанные из текстового файла
     
  3. Gamlet

    Gamlet Well-Known Member

    Регистрация:
    8 янв 2007
    Сообщения:
    609
    Симпатии:
    0
    alex77755
    Других вариантов я себе представить не могу. Только человеку с таким вопросом вероятно код нужен.
     
  4. kaskad755

    kaskad755 Active Member

    Регистрация:
    13 фев 2009
    Сообщения:
    34
    Симпатии:
    0
    Если честно, даже не представляю как это делается(учусь,и пока с трудом).............
     
  5. alex77755

    alex77755 Well-Known Member

    Регистрация:
    15 фев 2009
    Сообщения:
    128
    Симпатии:
    0
    Создай пустой проект
    Форма "Форма1"

    кинь на неё три кнопки: Комманда1, Комманда2, Комманда3
    скопируй код: (конечно примитвно, но для начала пойдёт)

    Код (Text):
    Dim Xn, Yn, R
    Private Sub Form_Load()
    Форма1.Комманда1.Caption = "Добавить линию"
    Форма1.Комманда1.Default = True
    Форма1.Комманда2.Caption = "Удалить линию"
    Форма1.Комманда2.Enabled = False
    Форма1.Комманда3.Caption = "Загрузить линию"
    Форма1.Комманда3.Enabled = False
    End Sub
    Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If R = 1 Then
    Xn = X
    Yn = Y
    Комманда1.Caption = "Удерживайте клавишу"
    R = 2
    End If
    End Sub
    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If R = 2 Then Комманда1.Caption = "Отпустите в конце"
    End Sub
    Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Open App.Path & "\sav.txt" For Output As 1      ' запоминаем координаты в файл
    Print #1, Xn, Yn, X, Y
    Close #1
    Форма1.Line (Xn, Yn)-(X, Y)
    Комманда1.Caption = "линия добавлена"
    Комманда1.Enabled = False
    Комманда2.Enabled = True
    End Sub
    Private Sub Комманда1_Click()
    If R = 0 Then
    R = 1
    Комманда1.Caption = "Нажмите на начало"
    End If
    End Sub
    Private Sub Комманда2_Click()
    Форма1.Cls
    Комманда2.Enabled = False
    Комманда3.Enabled = True
    End Sub
    Private Sub Комманда3_Click()
    Dim Xk, Yk
    Open App.Path & "\sav.txt" For Input As 1
    Input #1, Xn, Yn, Xk, Yk
    Close #1
    Kill App.Path & "\sav.txt"
    Форма1.Line (Xn, Yn)-(Xk, Yk)
    Комманда3.Caption = "линия загружена"
    End Sub
     
  6. kaskad755

    kaskad755 Active Member

    Регистрация:
    13 фев 2009
    Сообщения:
    34
    Симпатии:
    0
    Большое спасибо, понятно(теперь хотя бы знаю от чего плясать)
     
  7. alex77755

    alex77755 Well-Known Member

    Регистрация:
    15 фев 2009
    Сообщения:
    128
    Симпатии:
    0
    Смотря для каких целей. Используя Line нельзя, при необходимости, удалить одну линию - можно только очистить форму.
    Если необходимо удалять по одной линии, то лучше загружать и выгружать объект( в русской версии он называется "Строка).
    Только сначала на форму надо кинуть одну, установить в её свойствах индекс = 0 и видимость = False.
    Ну и использовать Load UnLoad
     
  8. kaskad755

    kaskad755 Active Member

    Регистрация:
    13 фев 2009
    Сообщения:
    34
    Симпатии:
    0


    Load UnLoad СПОСИБОЧКИ, это как раз то что нужно..........
     
Загрузка...

Поделиться этой страницей