Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Хелп Добавлено: 26.03.06 21:14  

Автор вопроса:  SL | ICQ: 277007669 
Когда убираю окно ShowWindow, то остаётся его значок в панели задач. А как его убрать?

Ответить

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

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



ICQ: 298742928 

Вопросов: 58
Ответов: 340
 Профиль | | #1 Добавлено: 27.03.06 18:57
Поподробней, плиз. Код в студию и все такое.

Что есть ShowWindow (форма?), как ты его убираешь?

Ответить

Номер ответа: 2
Автор ответа:
 HACKER


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #2 Добавлено: 27.03.06 21:53
Есть такая структура
   Private Type NOTIFYICONDATA
       cbSize           As Long
       hwnd             As Long
       uID              As Long
       uFlags           As Long
       uCallbackMessage As Long
       hIcon            As Long
       szTip            As String * 64
   End Type
   Private NID As NOTIFYICONDATA


И есть такой код
'удаление иконки из Tray
Public Sub Delete()
   Dim ret As Long
   
   'заполняем структурку
      NID.cbSize = Len(NID)
   
   'вызываем функцию API
      ret = Shell_NotifyIcon(NIM_DELETE, NID)
      
End Sub


hwnd и uID структуры и есть ShowWindow.hwnd
т.е. ты должен при ShowWindow_Unload организовать Delete иконки

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 27.03.06 21:54
забыл

Private Const NIM_DELETE = &H2

А вообще посмотри примеры, неужели нигде в них нет удаления за собой иконки :)

Ответить

Номер ответа: 4
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #4
Добавлено: 28.03.06 04:34
HACKER
При чём здесь панель задач и область уведомлений?

SL
Чтобы не париться в будущем, бери Spy++ и анализируй поведение других окон.

Ответить

Номер ответа: 5
Автор ответа:
 SL



ICQ: 277007669 

Вопросов: 10
Ответов: 86
 Профиль | | #5 Добавлено: 28.03.06 10:56
Не в трее иконка застряла, хотя и там тоже, но мне не надо, так как трудно найти нужное hwnd....

эта прога прсото внизу, где сворачиваются и разворачиваются проги
в бейсике это ShowInTaskBar

проги убираются все, а это нет (с помощью этой функции)

Ответить

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



ICQ: 298742928 

Вопросов: 58
Ответов: 340
 Профиль | | #6 Добавлено: 28.03.06 14:52
Так оно в процессе выполнения кода Read-only... Кажись... Или ты до выполнения кода это делаешь?

Ответить

Номер ответа: 7
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #7
Добавлено: 28.03.06 15:35
(c) mc-black
Option Explicit
Const GWL_EXSTYLE As Long = -20
Const WS_EX_APPWINDOW As Long = &H40000
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Sub Form_Load()
    Dim Ret As Long
    Ret = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
    Ret = Ret And Not WS_EX_APPWINDOW
    Ret = SetWindowLong(Me.hwnd, GWL_EXSTYLE, Ret)
End Sub

Ответить

Страница: 1 |

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



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