Filelistbox

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Stable
Новичок
Новичок
 
Сообщения: 45
Зарегистрирован: 20.06.2006 (Вт) 7:30
Откуда: УФА

Filelistbox

Сообщение Stable » 31.08.2006 (Чт) 8:36

Здраствуйте!
Помогите полному чайнику. Такой вот вопрос:
В Listbox при Выборе файла txt открывается другая форму с textbox , textbox непоказывает содержимое этого файла:( Посаветуйте.

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

Сообщение alibek » 31.08.2006 (Чт) 8:39

Что было сделано и что вызывает сложности?
Lasciate ogni speranza, voi ch'entrate.

Stable
Новичок
Новичок
 
Сообщения: 45
Зарегистрирован: 20.06.2006 (Вт) 7:30
Откуда: УФА

Сообщение Stable » 31.08.2006 (Чт) 8:58

Немогу сделать код в textbox(Form2), чтоб открывался файл из ListBox(form1).

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

Сообщение Debugger » 31.08.2006 (Чт) 9:14

fl=FileList
Код: Выделить всё

open form1.fl.filename for input as #1
Dim s As String
Dim i As Integer
i = FileLen(form1.fl.filename)
s = Input(i, #1)
txt=s
Close
Последний раз редактировалось Debugger 31.08.2006 (Чт) 16:05, всего редактировалось 2 раз(а).

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

Сообщение alibek » 31.08.2006 (Чт) 9:24

Лучше fl.Path & "\" & fl.Filename, и не For Input, а For Binary.
Lasciate ogni speranza, voi ch'entrate.

Stable
Новичок
Новичок
 
Сообщения: 45
Зарегистрирован: 20.06.2006 (Вт) 7:30
Откуда: УФА

Сообщение Stable » 31.08.2006 (Чт) 9:41

Сама прога такая:
Прграмма должна открывать текстовые файлы и изображения.
С изображением я справился. ( В Listbox выбираю изображение, на Picturebox оно есть), а вот с текстовым файлом немогу разобраться. Как мне поступить?
Кстате, а что такое *fl=Листикю*.

Oxygen
Белая и пушистая
Белая и пушистая
Аватара пользователя
 
Сообщения: 1314
Зарегистрирован: 15.07.2003 (Вт) 7:14
Откуда: Москва

Сообщение Oxygen » 31.08.2006 (Чт) 9:56

А если использовать RichTextBox? Тогда все становится крайне просто.
Процедура клонирования завершена.
Коррекция имплантированного сознания соответствует принятым алгоритмам.
Уникальный идентификатор скопирован в чип временного паспорта.
Активация прав гражданина ожидается в течение 24 часов

Stable
Новичок
Новичок
 
Сообщения: 45
Зарегистрирован: 20.06.2006 (Вт) 7:30
Откуда: УФА

Сообщение Stable » 31.08.2006 (Чт) 10:21

Oxygen

А код можешь подсказать?

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

Сообщение alibek » 31.08.2006 (Чт) 10:26

Oxygen писал(а):А если использовать RichTextBox? Тогда все становится крайне просто.

Э... А ты его вопрос читала?
Lasciate ogni speranza, voi ch'entrate.

Oxygen
Белая и пушистая
Белая и пушистая
Аватара пользователя
 
Сообщения: 1314
Зарегистрирован: 15.07.2003 (Вт) 7:14
Откуда: Москва

Сообщение Oxygen » 31.08.2006 (Чт) 10:40

Читала. Но если человек не может отобразить содержимое файла в TextBox, то может ему будет проще загрузить есго целиком в RTB?

2Stable Берем RichTextBox ставим его на форму, вторую, где должен отображаться текст. При выборе файла пишем Form2.RichTextBox.LoadFile (form1.fl.Path & "\" & form1.fl.filename)
В общем, смысл такой, а как уж у тебя компоненты называются, сам расставишь имена.
Процедура клонирования завершена.
Коррекция имплантированного сознания соответствует принятым алгоритмам.
Уникальный идентификатор скопирован в чип временного паспорта.
Активация прав гражданина ожидается в течение 24 часов

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

Сообщение Debugger » 31.08.2006 (Чт) 16:05

alibek писал(а):Лучше fl.Path & "" & fl.Filename, и не For Input, а For Binary.

Да? :shock:

Stable
Новичок
Новичок
 
Сообщения: 45
Зарегистрирован: 20.06.2006 (Вт) 7:30
Откуда: УФА

Сообщение Stable » 31.08.2006 (Чт) 18:35

Спасибо программа сработала:), но есть один ньюанс. RitchBox открывает необходимый файл, только после нажатия на какую-либо клавишу!

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 31.08.2006 (Чт) 19:03

Debugger
Никогда не использую for input и for output для чтения/записи.Могут испортить содержимое файла.Лучше использовать binary с соответствующим Access (Read или Write). For Output использую только для обнуления содержимого файла :lol: , кто-нибудь, скажите, как ещё выставляется размер файла в 0?
Изображение

|kerish|
Постоялец
Постоялец
 
Сообщения: 831
Зарегистрирован: 22.10.2004 (Пт) 0:31

Сообщение |kerish| » 31.08.2006 (Чт) 20:51

keks-n писал(а): кто-нибудь, скажите, как ещё выставляется размер файла в 0?


Kill "C:\test.txt"
Open "C:\test.txt" For Binary As #1
Close #1

хе-хе :lol:

P.S. Открывание файла способом
alibek писал(а):fl.Path & "" & fl.Filename

может в некоторых случаях привести к провалу, хотя это уже придирки...

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 31.08.2006 (Чт) 20:57

Kill - это с предварительным убиением... А мне надо без оного
Изображение

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 31.08.2006 (Чт) 21:46

кто-нибудь, скажите, как ещё выставляется размер файла в 0?
Код: Выделить всё
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Const GENERIC_WRITE = &H40000000
Private Const TRUNCATE_EXISTING = 5
Private Type SECURITY_ATTRIBUTES
    nLength As Long
    lpSecurityDescriptor As Long
    bInheritHandle As Long
End Type

Dim hFile As Long
Dim sa As SECURITY_ATTRIBUTES
    sa.nLength = Len(sa)
    hFile = CreateFile(lPath, GENERIC_WRITE, 0, sa, TRUNCATE_EXISTING, 0, 0)
    CloseHandle hFile
Лучший способ понять что-то самому — объяснить это другому.

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

Сообщение alibek » 01.09.2006 (Пт) 8:14

keks-n писал(а):Debugger
Никогда не использую for input и for output для чтения/записи.Могут испортить содержимое файла.Лучше использовать binary с соответствующим Access (Read или Write). For Output использую только для обнуления содержимого файла :lol: , кто-нибудь, скажите, как ещё выставляется размер файла в 0?

For Input файл никогда не попортит.
Чтобы изменить (уменьшить) размер файла, можно использовать API SetEndOfFile.
Lasciate ogni speranza, voi ch'entrate.

SeT
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 362
Зарегистрирован: 29.12.2004 (Ср) 13:11

Сообщение SeT » 01.09.2006 (Пт) 13:10

Спасибо программа сработала, но есть один ньюанс. RitchBox открывает необходимый файл, только после нажатия на какую-либо клавишу!
Странно...
тогда richtextbox1.refresh
01000100
Причиняет боль 0010
Виртуальная любовь 00100
Индустрия снов 0010


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

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

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

    TopList