Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Простой вопрос о свойстве фона формы 
:(
    Опции темы
vo0nw
Дата 19.8.2009, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 19.8.2009

Репутация: нет
Всего: нет



Задача:
Фон формы берется из jpeg-файла, расположение которого неизменно и определено сразу. 
Этот файл обновляется оператором.
Программа с интервалом в 10 сек проверяет размер файла на предмет изменения, если файл изменен - перезагружаем background из файла.
Вопрос: как закрыть файл после того, как бекграунд был загружен?
При попытке перезаписать файл вижу ошибку "Файл используется другой програмой"
 smile 
PM MAIL   Вверх
neic
Дата 19.8.2009, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Исходники в студию!!!

Могу лишь предположить, то, что ты не закрываешь файл, когда считываешь данные о размере картинки.

Добавлено @ 18:35
Ах да! Если размер разный, то это не означает, что картинка изменилась и наоборот раз размер одинаковый, это не означает, что картинка не изменилась.

Это сообщение отредактировал(а) neic - 19.8.2009, 19:01
PM MAIL WWW ICQ Skype   Вверх
vo0nw
Дата 20.8.2009, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 19.8.2009

Репутация: нет
Всего: нет



Решил делать копию файла и бекграунд грузить уже из копии.
Знания VB не позволили установить свойство Me.BackgroundImage в пустоту на время подмены файлов
Привычные = Null или ="" тут не катят.
Методом тыка наткнулся на метод Dispose(), и решил вопрос smile
--
Код

Public Class Form1
Public fmod As Date

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If (fmod <> FileSystem.FileDateTime("c:\tablo.jpg")) Then
Me.BackgroundImage.Dispose()
FileSystem.FileCopy("c:\tablo.jpg", "c:\windows\TEMP\temp.jpg")
Me.BackgroundImage = System.Drawing.Image.FromFile("c:\windows\TEMP\temp.jpg")
fmod = FileSystem.FileDateTime("c:\windows\TEMP\temp.jpg")
End If
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Width = 1650
Me.Height = 1050
Timer1.Interval = 10000
fmod = FileSystem.FileDateTime("c:\tablo.jpg")
FileSystem.FileCopy("c:\tablo.jpg", "c:\windows\TEMP\temp.jpg")
Me.BackgroundImage = System.Drawing.Image.FromFile("c:\windows\TEMP\temp.jpg")

End Sub
End Class

PM MAIL   Вверх
vo0nw
Дата 20.8.2009, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 19.8.2009

Репутация: нет
Всего: нет



Запускаю экзешник на целевом компе без студии, и вижу "Ошибку инициализации приложения"
Думаю, программе чего-то не хватает. Поискал в гугле microsoft visual basic runtime,
нашел пакет для студии 6.0. Скачал, установил - безрезультатно.
Писал в Visual Basic 8.0 Express Edition
В чем может быть дело?
PM MAIL   Вверх
Naghual
Дата 20.8.2009, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1893
Регистрация: 15.5.2004
Где: Украина, Днепр

Репутация: 26
Всего: 49



в отсутствии NET Framework


--------------------
Я желаю всем Счастья!
PM ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0418 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.