Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос / 7 сообщений из 7, страница 1 из 1
23.04.2003, 19:04
    #32147121
РАДАНЯ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
В связи с тем, что у моих клиентов, мягко говоря, "небыстрые" компьютеры загрузка программы, копирование кода, сохранение и т.п. происходит в течение нескольких секунд (10...15 с). Я бы хотел, что бы на это время на дисплее появлялось окно с предупреждением типа "Подождите, идёт загрузка...". Мне кажется, я уже видел где-то такие программки, но нет времени их искать. Может кто-нибудь поможет? Буду очень признателен.
РАДАНЯ
...
Рейтинг: 0 / 0
26.04.2003, 21:07
    #32149504
Strannik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
А в чем проблема ?
Если у тебя идет какая-то загрузка, то пишешь

frmLoadingPicture.Show 'картинка
SetWindowLong(...) 'делаешь top-most
... 'сама обработка
frmLoadingPicture.Hide
...
Рейтинг: 0 / 0
27.04.2003, 13:11
    #32149581
РАДАНЯ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
Не нахожу функции SetWindowLong(...) 'делаешь top-most.
Нельзя ли поподробнее?
РАДАНЯ
...
Рейтинг: 0 / 0
27.04.2003, 16:13
    #32149613
Strannik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
Сорри, не SetWindowLong а SetWindowPos. Это WinAPI ф-ция, описание можешь посмотреть в MSDN/API Text Viewer.

Указываешь параметр hWndInsertAfter - HWND_TOPMOST. И у тебя твоя форма будет поверх других окон.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
13.10.2006, 14:34
    #34053836
Charles Weyland
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
На счёт "поверх остальных окон" - можно поподробнее?
Мой VB6 не находит эту функцию... дай, плиз, фрагмент программы, который показывает форму моей программы поверх других окон проводника Windows
...
Рейтинг: 0 / 0
13.10.2006, 14:49
    #34053883
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Option Explicit
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Const SWP_NOSIZE = &H1
Const SWP_NOMOVE = &H2
Const SWP_NOZORDER = &H4
Const SWP_NOREDRAW = &H8
Const SWP_NOACTIVATE = &H10
Const SWP_FRAMECHANGED = &H20        '  The frame changed: send WM_NCCALCSIZE
Const SWP_SHOWWINDOW = &H40
Const SWP_HIDEWINDOW = &H80
Const SWP_NOCOPYBITS = &H100
Const SWP_NOOWNERZORDER = &H200      '  Don't do owner Z ordering
Const SWP_DRAWFRAME = SWP_FRAMECHANGED
Const SWP_NOREPOSITION = SWP_NOOWNERZORDER
' SetWindowPos() hwndInsertAfter values
Const HWND_TOP =  0 
Const HWND_BOTTOM =  1 
Const HWND_TOPMOST = - 1 
Const HWND_NOTOPMOST = - 2 
Private Sub Command1_Click()
    Dim i
    i = SetWindowPos(hwnd, HWND_TOPMOST,  0 ,  0 ,  0 ,  0 , SWP_NOSIZE Or SWP_NOMOVE)
End Sub
Private Sub Command2_Click()
    Dim i
    i = SetWindowPos(hwnd, HWND_NOTOPMOST,  0 ,  0 ,  0 ,  0 , SWP_NOSIZE Or SWP_NOMOVE)
End Sub
...
Рейтинг: 0 / 0
13.10.2006, 14:57
    #34053912
Charles Weyland
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос
О!! Работает!!!))
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]