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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> увеличить ширину рисунка 
:(
    Опции темы
resseg
Дата 19.3.2010, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте
Есть код закрытие формы по истечению определенного времени форма закрывается, отчет идет в обратном порядке.
Mожно ли как то увеличить ширину рисунка Image17.Width=219
Обратный отчет секундомера, увеличивает ширину рисунка от 0 до 219, при нулевом значение секундомера ширина рисунка уходит в 0
Код

Dim LbTime As Integer

Sub Lb1Start()
  LbTime = 11
  RunTimer
  UserForm_Time.Show
End Sub

Sub RunTimer()
  If LbTime = 0 Then
    UserForm_Time.Hide
    Exit Sub
  End If
  LbTime = LbTime - 1
  
  UserForm1.Image17.Width = 0 'увеличить ширину рисунка до 219
  
  UserForm_Time.Label1.Caption = "Примерное время загрузки " & LbTime & " сек."
  Application.OnTime Now + TimeValue("00:00:01"), "RunTimer"
End Sub

PM MAIL   Вверх
Staruha
Дата 20.3.2010, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

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



ну если у тебя текстбоксе время меняется то реагируй на его изменение .Обрешь текст переведи в число.Это и будет твоя переменная.


--------------------
Возмездие настигнет
PM MAIL   Вверх
resseg
Дата 20.3.2010, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Staruha @ 20.3.2010,  08:56)
ну если у тебя текстбоксе время меняется то реагируй на его изменение .Обрешь текст переведи в число.Это и будет твоя переменная.

Ширина рисунка изменяется на - 1 сек .  Image17.Width + 16.8
Как сделать плавное увеличение рисунка до 219 в промежуток времени от 13 сек. до 0 сек.
Код

UserForm1.Image17.Width = UserForm1.Image17.Width + 16.8
DoEvents


PM MAIL   Вверх
dorogoyIV
Дата 20.3.2010, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

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



please


ой, забыл там в макросе удалить переменную k, она нафиг не нужна  smile 

Это сообщение отредактировал(а) dorogoyIV - 20.3.2010, 14:45

Присоединённый файл ( Кол-во скачиваний: 7 )
Присоединённый файл  ResizeImage.rar 69,55 Kb
PM MAIL   Вверх
resseg
Дата 20.3.2010, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



У меня все это происходит на форме VBA промежуток времени от 13 сек до 0 (отчет обратный), на одну секунду времени происходит увеличение ширины рисунка на 16.8 конечный результат ширены 13 сек х 16.8=219. Все нормально, но расширение рисунка идет рывками, как ширину рисунка от 0 до 219 сделать плавной на промежуток времени от 13 до 0
Код

Dim LbTime As Integer

Sub Lb1Start()
  UserForm1.Frame2.Caption = "Загрузка"
  LbTime = 13
  RunTimer
  UserForm_Time.Show
End Sub

Sub RunTimer()
  If LbTime = 0 Then
        UserForm1.Image17.Width = 0
        UserForm1.Frame2.Caption = "Информация"
        UserForm_Time.Hide
    Exit Sub
  End If
    LbTime = LbTime - 1
    UserForm1.Image17.Width = UserForm1.Image17.Width + 16.8
    DoEvents
    UserForm_Time.Label1.Caption = "Примерное время загрузки " & LbTime & " сек."
    Application.OnTime Now + TimeValue("00:00:01"), "RunTimer"
End Sub

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


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

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



извините, я в вба недавно, поэтому меня смущает когда ширину увеличивают на 16,8
я думал, что ширина в пикселях измеряется... (пиксель не может быть не целым числом!!!)

Добавлено через 3 минуты и 50 секунд
все равно вы не сможете подогнать свой код под миллисекунды, это не реально!!!
PM MAIL   Вверх
resseg
Дата 20.3.2010, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Понятно.
Я сам в VBA конкретный новичок.
Так как предугадать Прогресс баром открытие окна стороннего приложения очень трудно, попытался сделать муляж Прогресс бара, и подогнать время и ширину рисунка под открытие приложения.
В принципе получилось не плохо, только рисунок расширения идет рывками, вот и хотел сделать плавное расширение рисунка в промежуток времени

И еще вопрос можно ли в VBA отключить курсор мыши кодом (именно отключить, а не сделать не видимым)

Это сообщение отредактировал(а) resseg - 20.3.2010, 17:43
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

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

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

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



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


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

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


 




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


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

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