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

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

Указываешь параметр hWndInsertAfter - HWND_TOPMOST. И у тебя твоя форма будет поверх других окон.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Вопрос
    #34053836
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На счёт "поверх остальных окон" - можно поподробнее?
Мой VB6 не находит эту функцию... дай, плиз, фрагмент программы, который показывает форму моей программы поверх других окон проводника Windows
...
Рейтинг: 0 / 0
Вопрос
    #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
Вопрос
    #34053912
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О!! Работает!!!))
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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