На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual Basic: Общие вопросы
Здесь обсуждаются вопросы по языку Visual Basic 1-6 (а так же по схожим языкам, как, например, PowerBASIC).
Вопросы по Visual Basic .NET (это который входит в состав Visual Studio 2002/2003/2005/2008+, для тех, кто не в курсе) обсуждаются в разделе .NET.

Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что Вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются. Студенты, вам сюда: ПОМОЩЬ СТУДЕНТАМ!
4. Используйте теги [ code=vba ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Формулируйте свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной (и более) давности, без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта user posted image FAQ Раздела user posted image Кладовка user posted image Наши Исходники user posted image API-Guide user posted image Поиск по Разделу user posted image MSDN Library Online user posted image Google

Ваше мнение о модераторах: user posted image SCINER, user posted image B.V.
Модераторы: SCINER, B.V.
  
> Сохранить и восстановить строку ListView после её удаления
    Как, если нет массива исходных данных, а все данные лежат в ListView? ListView1.View = lvwReport.
    Сообщение отредактировано: BlackSun -
      Логично, что нужно куда-то записать содержимое строки (как Item, так и его SubItems)

      Однако такой дизайн, когда данные хранятся в контролах, неудачен - что и проявилось в данной проблеме.
        В том и вопрос - всё придётся записывать отдельно по каждому параметру? Получить сразу копию ListItem не получится?

        Всё удачно, не надо держать в памяти большой массив данных, данные получаются извне и выводятся построчно.
        Сообщение отредактировано: BlackSun -
          Цитата BlackSun @
          всё придётся записывать отдельно по каждому параметру?

          Отож... ну будет что-то типа (простейший, но рабочий вариант, проверен в MS Access)
          ExpandedWrap disabled
            Private Sub Button1_Click()
            Dim OneItem As ListItem
            Dim i As Integer, j As Integer
            For i = 1 To ListView0.ListItems.Count
                Set OneItem = ListView0.ListItems(i)
                Call Save(OneItem.Text)
                For j = 1 To OneItem.ListSubItems.Count
                    Call Save(OneItem.Text & vbTab & OneItem.ListSubItems(j).Text)
                Next
            Next
            End Sub
             
            Sub Save(txt As String)
            Open "c:\tmp\listview.txt" For Append As #1
            Print #1, txt
            Close #1
            End Sub

          ну и обратная операция.
          Сообщение отредактировано: Akina -
          Есть претензии ко мне как к модератору? читайте Правила, разделы 5 и 6, и действуйте соответственно.
          Есть претензии ко мне как к участнику? да ради бога.
          Не нравятся мои ответы? не читайте их.
          В общем, берегите себя. Нервные клетки не восстанавливаются.
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script Execution time: 0,0704 ]   [ 18 queries used ]   [ Generated: 6.07.20, 12:53 GMT ]