Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Часы из TextBox Добавлено: 05.06.04 19:59  

Автор вопроса:  Anry Deriabine

Как сделать, чтобы TextBox в реальном времени показывал время?

Ответить

  Ответы Всего ответов: 13  

Номер ответа: 1
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #1
Добавлено: 05.06.04 20:48
Используй совместно таймер с интервалом, скажем, в миллисекунд 100...

Ответить

Номер ответа: 2
Автор ответа:
 Anry Deriabine



Вопросов: 14
Ответов: 29
 Профиль | | #2 Добавлено: 05.06.04 23:37
Где использовать?Этот TextBox на экселевском листе висит, в нем должна отображаться дата и время.А на какое событие ЭТО определить, не пойму.Слабоват еще в этом деле.
Private Sub ?????
 TextBox2.Text = Date & " " & Time
End Sub

Ответить

Номер ответа: 3
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #3
Добавлено: 06.06.04 00:17
Ну не знаю... там же когда в редактор VB влезаешь, там предлагают форму... вот на нее таймер... Хотя как все это делается - хз...

Ответить

Номер ответа: 4
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #4
Добавлено: 06.06.04 01:33
 Наверное таймер таки прийдётся на API создавать.

Ответить

Номер ответа: 5
Автор ответа:
 Anry Deriabine



Вопросов: 14
Ответов: 29
 Профиль | | #5 Добавлено: 06.06.04 17:43
А если впихать его на открытие страницы?
WorkSheets.Activate ....

Ответить

Номер ответа: 6
Автор ответа:
 TERMIT



ICQ: 5297101 

Вопросов: 16
Ответов: 93
 Web-сайт: xtec.ru
 Профиль | | #6
Добавлено: 06.06.04 21:45
да че там париться....может я не правельно понял но мне кажеться все елементарно....

в тай

Ответить

Номер ответа: 7
Автор ответа:
 TERMIT



ICQ: 5297101 

Вопросов: 16
Ответов: 93
 Web-сайт: xtec.ru
 Профиль | | #7
Добавлено: 06.06.04 21:55
пардон enter ничайно нажа.....ну так вот.....создаеш таймер и text1

и на таймер ставиш интервал 1.....а в код таймера пишеш:

text1.text = date$ & " " time$

вот так...:)




Кстате я набираю группу разработчиков на vb....для совместного создания оболочки для windows .......если ты заинтересован то пиши

 

www.info-soft.nm.ru

termit20031988@list.ru

Ответить

Номер ответа: 8
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #8
Добавлено: 07.06.04 00:31
 По моему ответы 5-7 совершенно излишни. Как он будет таймер без формы создавать? Хоть бы прочитали вопрос повнимательнее.

Ответить

Номер ответа: 9
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #9
Добавлено: 07.06.04 01:21
CyRax, я не уверен, но разве и на VBA можно использовать АПИ !? Если так, то макросам дается нехилая свобода действий...

Ответить

Номер ответа: 10
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #10
Добавлено: 07.06.04 04:41
 Sne,
 Считаю незнание VBA минусом для VB-программиста. Иначе зачем тогда перечислять это в его достоинствах.
 А вообще, VBA - это как VB.NET: куча классов, привязка к офису, ну и поддержка API соответственно.
---
 Специально для тебя проверил в Ворде.

Private Declare Function MessageBeep Lib "user32.dll" ( _
     ByVal wType As Long) As Long
Private Sub Document_New()
 MessageBeep 32
End Sub
---
 Я вообще то тоже не профессионал в VBA. Наверное можно создать таймер и без формы. Но, как говорится, "На безрыбье и рак рыба". Так что если никто более знающий не ответит, то и на API сгодится.

Ответить

Номер ответа: 11
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #11
Добавлено: 07.06.04 05:48
 Поробуй такой код.
 Создай новый макрос и в модуль вставь:
=====
Private Declare Function SetTimer Lib "user32.dll" ( _
     ByVal hWnd As Long, _
     ByVal nIDEvent As Long, _
     ByVal uElapse As Long, _
     ByVal lpTimerFunc As Long) As Long
Private Declare Function KillTimer Lib "user32.dll" ( _
     ByVal hWnd As Long, _
     ByVal nIDEvent As Long) As Long
Private Const HWND_DESKTOP = 0
Private Const WM_TIMER = &H113
Private Timer_Index As Long
'---
Public Sub Timer_Create(ByVal Interval As Long)
 Timer_Index = 0 ' Номер таймера если будешь использовать несколько таймеров
 SetTimer HWND_DESKTOP, Timer_Index, Interval, AddressOf Timer_Callback
End Sub
'---
Public Sub Timer_Destroy()
 KillTimer HWND_DESKTOP, Timer_Index
End Sub
'---
Function Timer_Callback(ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
 On Error Resume Next
 Select Case uMsg
 Case WM_TIMER
    If ActiveDocument Then
     ActiveDocument.Content = ActiveDocument.Content & Time$ & vbCr
    End If
 End Select
uMsg = 0
End Function
=====
 Пример для Word:
---
Private Sub Document_New()
 Timer_Create 500
End Sub
---
Private Sub Document_Close()
 Timer_Destroy
End Sub
=====

 PS: Будет выбивыать - пиши.

Ответить

Номер ответа: 12
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #12
Добавлено: 07.06.04 13:17
Ох и страшная эта штука макросы :)))

PS
Попросту я еще не встречал задач в работе (VBA), где бы мне понадобились АПИ... Спасибо что просветил :)

Ответить

Номер ответа: 13
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #13
Добавлено: 07.06.04 13:48
 sne,
 ты тестил API-Timer? Потесть плиз. Вдруг какую ошибку отловишь. Может на десктоп неправильно было таймер вешать? Но я не нашёл за время составления кода как найти hWnd какого нибудь вордовского окна средствами VBA.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам