Подсчитать кол-во строк в файле и перескочить на др. label

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 28.12.2008 (Вс) 18:49

Есть файл последовательного доступа, в котором есть N строк. Нужно сделать так, чтобы:

1. Программа считывает кол-во строк в файле и записывает в переменную (N).
2. Если N меньше 20 (предположим), выводим весь файл в Label1.
Если N больше 20, 20 строк файла мы выводим в Label1, а ОСТАВШИЕСЯ уже в Label2 (если можно, то и чтоб в Label3 тоже можно было вывести, а то вдруг остаток больше, чем 20 получится :))

Заранее огромное спасибо всем!

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение Хакер » 28.12.2008 (Вс) 19:06

И?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 28.12.2008 (Вс) 19:15

И все! Цикл завершается, а информация отображается в разных Label - не более, чем по 20 строк в каждом. Если в файл добавляем новую информацию, она также должна добавиться по этому правилу.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение Хакер » 28.12.2008 (Вс) 19:33

А. Ну тогда мы все рады за тебя. За то, что тебе нужно сделать так. И за то что цикл завершается.

Ты этого от нас хотел, чтобы мы за тебя все дружно порадовались? Или, может быть, чего-то другого?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение Viper » 29.12.2008 (Пн) 8:04

zusicks438, что тебе надо мы поняли, а вот что тебе нужно от посетителей форума? Что не получается? Как пробовал сделать?
Весь мир матрица, а мы в нем потоки байтов!

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение SLIM » 29.12.2008 (Пн) 13:16

Да не, человек хочет чтобы мы ему код написали. Гы, тогда в работу его...
Пишите жизнь на чистовик.....переписать не удастся.....

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 29.12.2008 (Пн) 13:35

Просто прога очень быстро меняется. Теперь волнует уже другой вопрос.

Есть TextBox, свойство ScrollBar = True. Нужно вывести из файла посл. доступа данные, которые записаны способом Print.

В одной строке файла 2 параметра - ну, как в словаре, например:

Слово1 Слово2
Слово3 Слово4
и.т.д.

И нужно, чтобы данные ПОСЛЕ пробела (т.е. с номерами 2 и 4 в данном случае) можно было скрыть. Причем, скрыть ВЕСЬ столбец, т.е. с слова индексами 2, 4, 6, 8, и.т.д.

Данные то я вывел, пробел прописал, а как скрыть ВЕСЬ столбец. Тут уже как-то на автомате надо, ведь не знаешь, что дальше записывать будут в файл.

Помогите, плззз.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение Viper » 29.12.2008 (Пн) 14:13

zusicks438, еще раз для непонятливых: в чем проблема то? Что не получается? Что предпринято для решения задачи?
Весь мир матрица, а мы в нем потоки байтов!

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 30.12.2008 (Вт) 20:43

Да ничего. Я просто не знаю, как это сделать. Тема вроде не только для тех, "круче кого только яйца", но и для новичков. Захожу на форум, смотрю - народ иногда и код если что подкинет и совет даст. А я тут еще книгу купил, "VB на практике" называется. Там в предисловии написано, что деньги пойдут на улучшение сайта, поддержку сообщества VB-программистов и.т.д. Но, видимо меня в этом сообществе как-то не особенно приняли.

По-моему я еще в первом сообщении довольно ясно выразился.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение iGrok » 30.12.2008 (Вт) 22:40

А тут есть два варианта.

Либо ты начинаешь разбираться и что-то делать сам. И когда это что-то не получается - спрашиваешь. Тогда тебе подсказывают.

Либо ты кидаешь объёвление в раздел "Работа". Упоминая, что это "за так". Может, кто и возьмётся..

А пока ты достаточно чётко написал, что тебе нужно. Но при этом не написал с чем именно у тебя возникла проблема. Поэтому возникает (и мне кажется, вполне справедливо) ощущение, что ты не хочешь разбираться как и что, а хочешь просто чтобы за тебя сделали.
При этом действия необходимые для решения твоей задачи настолько элементарны, что находятся поиском по форуму / гуглю в два счёта.
Естественно, никто не хочет впустую тратить своё время(а у большинства присутствующих оно стоит недёшево) на решение элементарной и неинтересной задачи уровня информатики 10-11 класса..

Начни разбираться и делать что-то сам и тебе помогут.

UPD: По второй задаче - скрывать второй столбец надо не после отображения текста в текстбокс, а до. Т.е. при чтении файла.
Ищешь в строке пробел и отрезаешь всё, что после него.
label:
cli
jmp label

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 11.01.2009 (Вс) 19:46

А как в ListBox прописать новую информацию? В TextBox это делается так:
Text1.Text = "Новый текст"
А в ListBox как? Именно не ДОБАВИТЬ, а ЗАМЕНИТЬ. Или просто очистить.

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение MIT » 11.01.2009 (Вс) 19:52

Очистить - ListBox.Clear
ListBox.RemoveItem - удалить по индексу
ListBox.List - изменить по индексу
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

[LEV&n]
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 113
Зарегистрирован: 17.10.2007 (Ср) 22:23
Откуда: Мариуполь

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение [LEV&n] » 13.01.2009 (Вт) 3:07

zusicks438 писал(а):А как в ListBox прописать новую информацию? В TextBox это делается так:
Text1.Text = "Новый текст"
А в ListBox как? Именно не ДОБАВИТЬ, а ЗАМЕНИТЬ. Или просто очистить.


Вот элементарный пример решения твоей задачи:

Код: Выделить всё
Dim b As String
Open "file" For Input As #1
Do While Not EOF(1)
Input #1, b$
List1.AddItem b$
Loop
Close


Количеством строк всего файла будет являться List1.listcount при этом файл будет считываться построчно и "," будет опрделяться переводом строки..

Заменить любую строку в листе проще простого List1.List(List1.Listindex [или значение Integer'a] ) = "Новая строчка"
В первом случае тебе предстоит выбрать строку в листе или назначить Listindex=0 или любой строке, во втором переменная подставит значения индекса из своего тела, учти то, что Listindex, так же как Integer не должны превышать значение Listcount-1 (минус 1) а это оправдывается тем, что первое число, обрабатываемое Listindex = 0, У Listcount оно равно 1
Если исключить из всех производственных звеньев дураков, то актуальность обсуждения продуктов их жизнедеятельности (дороги, пр-во и т.п.) исчезнет сама по себе.

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 13.01.2009 (Вт) 20:10

Спасибо, все понятно! А где скачать (посмотреть) MSDN? А есть документация на русском?

Возможно ли сделать так, чтобы вводилось слово, потом производился его поиск в ListBox и строка с этим словом выделялась?

[LEV&n]
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 113
Зарегистрирован: 17.10.2007 (Ср) 22:23
Откуда: Мариуполь

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение [LEV&n] » 13.01.2009 (Вт) 20:50

можно с помощью api как конкретно не знаю, поищи по форуму
Если исключить из всех производственных звеньев дураков, то актуальность обсуждения продуктов их жизнедеятельности (дороги, пр-во и т.п.) исчезнет сама по себе.

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение Debugger » 13.01.2009 (Вт) 21:44

Вот пример. Просто и понятно.
Вложения
Listbox.rar
(1.31 Кб) Скачиваний: 41

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение dr.MIG » 13.01.2009 (Вт) 22:19

Но не совсем оптимально.
Чтобы почувствовать разницу, измени свою процедуру Form_Load на
Код: Выделить всё
Private Sub Form_Load()
    For i = 0 To 4000
        lst.AddItem "123"
        lst.AddItem "1234"
        lst.AddItem "234"
        lst.AddItem "2345"
        lst.AddItem "345"
        lst.AddItem "456"
        lst.AddItem "абв"
        lst.AddItem "вгд"
    Next
    lst.AddItem "666"
End Sub

Попробуй ввести "666". И теперь тоже самое, только оптимально:
Вложения
AutoSelect.zip
Авто выбор из списка
(812 байт) Скачиваний: 32
Salus populi suprema lex

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 14.01.2009 (Ср) 10:46

ОГРОМНОЕ всем спасибо, оказывается все не так уж и сложно.

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 14.01.2009 (Ср) 20:21

Черт, у меня проблема. При запуске программы на другом компьютере вылетает ошибка 339: Component "COMCTL.OCX" or one of its dependencies not correctly registered: a file missing or invalid.

Набрал на своем компе в поиске по диску C:\ этот COMCTL.OCX, он нашел файл MSCOMCTL.OCX в папке system32.

Что мне делать? Примечательно, что он также нашел этот файл в папке еще одной программы, т.е. она его тоже использует.
Как можно решить проблему?
Прописать этот файл в system32? Или надо что-то другое делать? Подскажите...

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение dr.MIG » 14.01.2009 (Ср) 20:36

Лучший вариант -- создать установочный дистрибутив.
Salus populi suprema lex

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 14.01.2009 (Ср) 20:42

Так что с ошибкой делать? С файлом этим...OCX Куда его девать?

В проекте нашел такие строки:

Type=Exe
Form=frmStart.frm
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#..\..\..\..\..\..\WINDOWS\system32\stdole2.tlb#OLE Automation
Object={6B7E6392-850A-101B-AFC0-4210102A8DA7}#1.3#0; COMCTL32.OCX

Это что значит?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение Хакер » 14.01.2009 (Ср) 20:57

Тебе сказали что делать: распространять программу не абы как, а в установочном пакете.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 14.01.2009 (Ср) 21:04

И всё? А этот файл .OCX в установочный архив надо пихать?

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение dr.MIG » 14.01.2009 (Ср) 21:47

Обычно инсталлятор сам находит зависимости программы и сам добавляет нужные файлы, а кроме того предоставляет возможность добавить любые другие файлы в установочный пакет. А пихать тут не надо :).
Salus populi suprema lex

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 15.01.2009 (Чт) 9:50

OK, все понял!

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 15.01.2009 (Чт) 9:53

А архив создавать через VB Package & Deployment Wizard?

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение dr.MIG » 15.01.2009 (Чт) 12:40

Можно через него. Можно через другие -- InnoSetup, InstallShield, Wise и т.д. Если поискать по форуму, то можно найти много тем, посвящённых данному вопросу.
Salus populi suprema lex

zusicks438
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.12.2008 (Пт) 20:16

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение zusicks438 » 15.01.2009 (Чт) 20:56

Срочно подскажите, плиззз! Создал уст. архив через Бейсиковский package, ну он все эти файлы библиотек нашел, добавил, все дела. А потом при установке говорит:

Invalid строка такая вот в файле SETUP.LST:
File1=@COMCTL32.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),6.24.98 12:00:00 AM,609584,6.0.80.22
Че делать??? В принципе, у меня этот файл в системе уже есть, может, поэтому?
Пожскажите, плиззз. Пробовал через ИнноСетап, но он не проект, а уже готовый ехешник требует, это не то.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение alibek » 16.01.2009 (Пт) 10:36

При создании дистрибутива укажи американскую локаль.
Lasciate ogni speranza, voi ch'entrate.

bashobn
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 25.05.2008 (Вс) 10:37

Re: Подсчитать кол-во строк в файле и перескочить на др. label

Сообщение bashobn » 16.01.2009 (Пт) 12:52

Блин! Не парься с vbшным инсталлятором. Делай через rar.sfx архивацию и не парься. Проще намного. А насчет comctl-ов и прочих Сомпонентов, копируй файлы из своей windows\system32\ в ту машину, куда ставишь прогу.

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 90

    TopList  
cron