Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Запись и сохранение проекта Добавлено: 24.10.10 11:39  

Автор вопроса:  YAlex
Уважаемые фуромчане -доброго времени суток!
Помогите пожалуйста разобраться с сохранением проекта на VB.Net
Попробую чётко сформулировать задачу:
1)На форме имеется 1 лейбл, 4 текстбокса, 4 буттона.
Нужно:
1)Допустим мы ввели какие-либо данные в текстбосы, нужно чтобы при нажатии на буттон1, лейл (по умолчаниб имеет текст=1) менялся от 1 до n (в зависимости от количества кликов).
2)При переходе значения лейбла от значения= 1 на значение=2(и при следующих переходах(от значения =2 до значения =n)), происходила запись (допустим во временный файл) значений в текстбоксов, при этом 2 текстбокса очищались, а значения в 2-х других оставались бы неизменными.
3)при нажатии на буттон2, - происходил возврат (лейбл от значения=n до значения =n-1), при этом происходило чтение из временного файла тех
значений, которые были в него записаны( в зависимости от значения лейбла) и эти значения проставлялись бы в текстбоксы (т.е. буттон2-кнопка "возврата", а буттон1-кнопка "вперёд")
4)При нажатии буттона3, происходило сохранение временного файла в файл с каким-либо расширением (т.е. буттон3- кнопка "сохранить")
5) При нажатии на буттон4(кнопка "открыть"), можно было-бы подгрузить сохранённый файл с заданным расширением(см. пункт 4)
И ещё 2 момента, если можно, то объясните как это реализовать на примере, а не общими фразами("Используй стримврайтер и стримридер). И второй момент - как прикрутить картинку к файлу с заданным расширением(т.е. чтобы этот файл отображался картинкой)
Заранее благодарен всем, кто откликнется
Большое спасибо за внимание

Ответить

  Ответы Всего ответов: 15  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 24.10.10 13:24
Помогите пожалуйста разобраться с
так, конкретнее, в чем проблема то? с чем тебе помочь разобраться?
объясните как это реализовать на примере
код за тебя врядли кто-то напишет. пиши сам, с ошибками добро пожаловать сюда, тут помогут советами для исправления ошибок.
как прикрутить картинку к файлу с заданным расширением(т.е. чтобы этот файл отображался картинкой)
прикрутить картинку к файлу (что это вообще такое то) и отображать файл картинкой (тоже не совсем понятно, что нужно) - вещи на первый взгляд разные. опиши поподробней плз

Ответить

Номер ответа: 2
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #2
Добавлено: 24.10.10 14:44
как прикрутить картинку к файлу с заданным расширением(т.е. чтобы этот файл отображался картинкой)

Ну, можно залезть в архив, взять отвертку и саморез....

Что вообще значит прикрутить картинку к файлу?

Ответить

Номер ответа: 3
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #3 Добавлено: 24.10.10 14:57
я уже это у него спросил

Ответить

Номер ответа: 4
Автор ответа:
 YAlex



Вопросов: 1
Ответов: 6
 Профиль | | #4 Добавлено: 24.10.10 17:32
Начну с конца:
Отображать файл картинкой,это к примекру как у Ворда , файл с расширением *doc,отображается листом с буквой W; Прошу простить, может я не так выражаюсь, просто я в программировании не ас.
Код могу скинуть, если это поможет:

 Private Sub vperedbtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles vperedbtn.Click
        nazadbtn.Enabled = True
        Static i1 As Integer
        i1 = Label23.Text
        i1 = i1 + 1
        Label23.Text = i1
        TextBox1.Clear()
        TextBox2.Clear()
        TextBox3.Clear()
        TextBox4.Clear()
        TextBox11.Clear()
        TextBox12.Clear()
        TextBox13.Clear()
        TextBox14.Clear()
        TextBox15.Clear()
        TextBox16.Clear()
        TextBox17.Clear()
        Label18.Text = 0
        Label24.Text = " "
        Label25.Text = " "
        Label26.Text = " "
        Label27.Text = " "
        Label28.Text = " "
        Label29.Text = " "
        Label30.Text = " "
        Label31.Text = " "
        Label32.Text = " "
        Label33.Text = " "
        If i1 = 2 Then
            SaveFileDialog1.Filter = "Файлы приложения|*.grc"
            If SaveFileDialog1.ShowDialog = DialogResult.Cancel Then Exit Sub
            ;Dim Коллетор As String = SaveFileDialog1.FileName
            ;Dim Запись As New System.IO.StreamWriter(Коллетор)
            Запись.WriteLine(TextBox1.Text)
            Запись.WriteLine(TextBox2.Text)
            Запись.WriteLine(TextBox3.Text)
            Запись.WriteLine(TextBox4.Text)
            Запись.WriteLine(ComboBox1.Text)
            Запись.WriteLine(TextBox6.Text)
            Запись.WriteLine(TextBox10.Text)
            Запись.WriteLine(TextBox11.Text)
            Запись.WriteLine(TextBox12.Text)
            Запись.WriteLine(TextBox13.Text)
            Запись.WriteLine(TextBox14.Text)
            Запись.WriteLine(TextBox15.Text)
            Запись.WriteLine(TextBox16.Text)
            Запись.WriteLine(TextBox17.Text)
            Запись.WriteLine(Label18.Text)
            Запись.WriteLine(Label24.Text)
            Запись.WriteLine(Label25.Text)
            Запись.WriteLine(Label23.Text - 1)
            Запись.WriteLine(Label26.Text)
            Запись.WriteLine(Label27.Text)
            Запись.WriteLine(Label28.Text)
            Запись.WriteLine(Label29.Text)
            Запись.WriteLine(Label30.Text)
            Запись.WriteLine(Label31.Text)
            Запись.WriteLine(Label32.Text)
            Запись.WriteLine(Label33.Text)
            If i1 > 2 Then
                Запись.WriteLine(TextBox1.Text)
                Запись.WriteLine(TextBox2.Text)
                Запись.WriteLine(TextBox3.Text)
                Запись.WriteLine(TextBox4.Text)
                Запись.WriteLine(ComboBox1.Text)
                Запись.WriteLine(TextBox6.Text)
                Запись.WriteLine(TextBox10.Text)
                Запись.WriteLine(TextBox11.Text)
                Запись.WriteLine(TextBox12.Text)
                Запись.WriteLine(TextBox13.Text)
                Запись.WriteLine(TextBox14.Text)
                Запись.WriteLine(TextBox15.Text)
                Запись.WriteLine(TextBox16.Text)
                Запись.WriteLine(TextBox17.Text)
                Запись.WriteLine(Label18.Text)
                Запись.WriteLine(Label24.Text)
                Запись.WriteLine(Label25.Text)
                Запись.WriteLine(Label23.Text - 1)
                Запись.WriteLine(Label26.Text)
                Запись.WriteLine(Label27.Text)
                Запись.WriteLine(Label28.Text)
                Запись.WriteLine(Label29.Text)
                Запись.WriteLine(Label30.Text)
                Запись.WriteLine(Label31.Text)
                Запись.WriteLine(Label32.Text)
                Запись.WriteLine(Label33.Text)
                Запись.Close()
            End If
        End If
    End Sub
    Private Sub nazadbtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nazadbtn.Click
        Static i1 As Integer
        i1 = Label23.Text
        i1 = i1 - 1
        Label23.Text = i1
        If i1 = 1 Then
            nazadbtn.Enabled = False
        End If
        OpenFileDialog1.Filter = "Файлы приложения|*.grc"
        If OpenFileDialog1.ShowDialog = DialogResult.Cancel Then Exit Sub
        ;Dim Коллетор As String = OpenFileDialog1.FileName
        ;Dim Чтение As New System.IO.StreamReader(Коллетор)
        TextBox1.Text = Чтение.ReadLine
        TextBox2.Text = Чтение.ReadLine
        TextBox3.Text = Чтение.ReadLine
        TextBox4.Text = Чтение.ReadLine
        ComboBox1.Text = Чтение.ReadLine
        TextBox6.Text = Чтение.ReadLine
        TextBox10.Text = Чтение.ReadLine
        TextBox9.Text = Button5.Handle
        TextBox11.Text = Чтение.ReadLine
        TextBox12.Text = Чтение.ReadLine
        TextBox13.Text = Чтение.ReadLine
        TextBox14.Text = Чтение.ReadLine
        TextBox15.Text = Чтение.ReadLine
        TextBox16.Text = Чтение.ReadLine
        TextBox17.Text = Чтение.ReadLine
        Label18.Text = Чтение.ReadLine
        Label24.Text = Чтение.ReadLine
        Label25.Text = Чтение.ReadLine
        Label23.Text = Чтение.ReadLine
        Label26.Text = Чтение.ReadLine
        Label27.Text = Чтение.ReadLine
        Label28.Text = Чтение.ReadLine
        Label29.Text = Чтение.ReadLine
        Label30.Text = Чтение.ReadLine
        Label31.Text = Чтение.ReadLine
        Label32.Text = Чтение.ReadLine
        Label33.Text = Чтение.ReadLine
        Чтение.Close()
    End Sub

Просто сама программа - гораздо сложнее (порядка 10 форм,с разл.элементами управления) и производит достаточно много вычислений, с этим я разобрался и всё работает.
Мне не понятно как сделать так, что бы (как в интернет Эксплорере-есть стрелки на предыдущую страницу, и на следыющую страницу) при нажатии на кнопку "на следующую страницу", данные вычислений не терялись, а записывались к примеру во временный файл, а при нажатии на кнопку "на предыдущую страницу" - подгружала и показывала из временного файла эти данные.

Ответить

Номер ответа: 5
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #5 Добавлено: 24.10.10 18:10
no comments *facepalm*

Ответить

Номер ответа: 6
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #6 Добавлено: 24.10.10 18:24
вылезав из-под стола, пишу то, что ты обязан не применуя выпонять:

1. используй только английские названия переменных, крайне желательно на английском языке
2. делай dispose после использования потоков и других ресурсов, требующих ручного освобождения
3. упорядочи ввод-вывод и убери к чертям этот superior indian code
4. "Мне не понятно как сделать так" - либо не закрывай форму, либо расположи все на 10ти панелях (Panel) и выводи каждую на перед (.BringToTop)
5. Не используй Static без необходимости
6. "Просто сама программа - гораздо сложнее". Не вижу ничего сложного, твой код адекватными руками расписывается в строк 10-15
7. "vperedbtn". начни исправляться с этого.

Ответить

Номер ответа: 7
Автор ответа:
 YAlex



Вопросов: 1
Ответов: 6
 Профиль | | #7 Добавлено: 24.10.10 18:26
Может и facepalm, но на данном этапе, я в ступоре

Ответить

Номер ответа: 8
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #8 Добавлено: 24.10.10 18:36
Код жутковатый.
Dispose довольно редко приходится использовать, когда жизненный цикл объекта растянут более чем на 1 процедуру. В данном случае он не нужен, достаточно Using.

Вариантов решения задачи можно немало придумать.
Не обязательно сохранять в файл. Данные можно хранить прямо в памяти.

Ответить

Номер ответа: 9
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #9 Добавлено: 24.10.10 18:38
Код жутковатый.
Dispose довольно редко приходится использовать, когда жизненный цикл объекта растянут более чем на 1 процедуру. В данном случае он не нужен, достаточно Using.

Вариантов решения задачи можно немало придумать.
Не обязательно сохранять в файл. Данные можно хранить прямо в памяти.

Ответить

Номер ответа: 10
Автор ответа:
 YAlex



Вопросов: 1
Ответов: 6
 Профиль | | #10 Добавлено: 24.10.10 18:41
Я согласен, что всё можно было бы написать гораздо красивее, но для меня это первый опыт написания расчётной инженерной программы (я по роду деятельности инженер-проектировщик), просто очень часто приходится выполнять сложные расчёты, и я решил оптимизировать этот процесс, в книгах , которые я накупил по данной теме всё очень кратко и размыто.
Не спорю, если бы опыта было побольше, я бы не задавал многих "глупых вопросов.
А по поводу форм и панелей, может оно и правда было проще, просто у меня эти формы выполняют тоже расчётные действия и справку, результаты которых влияют на результат на "главной" форме.

Ответить

Номер ответа: 11
Автор ответа:
 YAlex



Вопросов: 1
Ответов: 6
 Профиль | | #11 Добавлено: 24.10.10 18:43
А как сохранить в памяти?

Ответить

Номер ответа: 12
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #12 Добавлено: 24.10.10 19:37
Создаешь класс со свойствами, объявляешь переменную как экземпляр. Используешь
  1. Dim Data as Object

Ответить

Номер ответа: 13
Автор ответа:
 YAlex



Вопросов: 1
Ответов: 6
 Профиль | | #13 Добавлено: 24.10.10 20:44
Спасибо большое, но кажется разобрался, пошёл "эксперементировать".Как получится - выложу код ка реализовал, интересно будет ваше мнение

Ответить

Номер ответа: 14
Автор ответа:
 YAlex



Вопросов: 1
Ответов: 6
 Профиль | | #14 Добавлено: 24.10.10 20:45
Спасибо большое, но кажется разобрался, пошёл "эксперементировать".Как получится - выложу код ка реализовал, интересно будет ваше мнение

Ответить

Номер ответа: 15
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #15 Добавлено: 24.10.10 23:19
не забудь засунуть свое творение в тег SOURCE

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам