Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
кофейник
-
- Начинающий

-
-
- Сообщения: 6
- Зарегистрирован: 13.06.2003 (Пт) 18:50
кофейник » 13.06.2003 (Пт) 19:43
подскажите чайнику следующую вещь.
как можно сделать, чтобы в Label1.Caption отражалась
только определенная строка из открываемого текстового файла, допустим 4 или 7 и.т.д.
Спасибо.
-
GSerg
-
- Шаман

-
-
- Сообщения: 14286
- Зарегистрирован: 14.12.2002 (Сб) 5:25
- Откуда: Магадан
GSerg » 14.06.2003 (Сб) 7:23
Эх,
RayShade когда-то такую кодяру написал для этого, до сих пор без умиления вспомнить не могу... Не нашёл я её, затерялось на старом форуме где-то...

Поэтому
- Код: Выделить всё
Dim a as string, b as integer, i as long
b=freefile
open "myfile" for input as #b
do until eof(b)
i=i+1
line input #b, a
if i=DesiredLineNumber then label1.caption=a:exit do
loop
close #b
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас
-
RayShade
-
- Scarmarked

-

-
- Сообщения: 5511
- Зарегистрирован: 02.12.2002 (Пн) 17:11
- Откуда: Russia, Saint-Petersburg
-
RayShade » 14.06.2003 (Сб) 9:39
Не дадим пропасть культурному наследию прошлых лет:
- Код: Выделить всё
on error resume next
dim fso as new filesystemobject
dim str as textstream
dim f as file
dim st as string
dim lbl as Object
dim cnt as long
set f = fso.getfile("file.txt")
set str = f.openastextstream(forReading)
st = str.readall
cnt = 1
Do Until cnt = 3
st = Mid(st, InStr(1, st, Chr(13) & Chr(10), vbTextCompare) + 1)
cnt = cnt + 1
Loop
Set lbl = Me.Controls.Add ("VB.Label", "Label5")
if err.number <>0 then set lbl = me.controls("Label5")
lbl.Caption = Replace(Replace(Mid(st, 1, InStr(1, st, Chr(13) & Chr(10), vbTextCompare)), Chr(13), "", 1, -1, vbTextCompare), Chr(10), "", 1, -1, vbTextCompare)
if err.number = 0 then
lbl.left=1
lbl.top=1
lbl.width = textwidth(lbl.caption)
lbl.height = textheight(lbl.caption)
end if
Вышеприведенный код создает на форме Label и пишет в него 3-ю строчку из указанного файла

-
кофейник
-
- Начинающий

-
-
- Сообщения: 6
- Зарегистрирован: 13.06.2003 (Пт) 18:50
кофейник » 21.06.2003 (Сб) 0:56
спасибо большое! все работает! извините за поздний ответ!
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: AhrefsBot, Google-бот, SemrushBot, Yandex-бот и гости: 12