Inibir fechamento de janela
Moderador: Moderadores
-
LUCAS MACHADO
- Usuário Nível 1

- Mensagens: 25
- Registrado em: 31 Mai 2013 11:43
- Localização: RIO DE JANEIRO/RJ
Inibir fechamento de janela
Tenho uma aplicação que executa um procedimento demorado que não deve ser interrompido pelo fechamento da janela (X). Alguém sabe me dizer como inibir este fechamento da janela? Uso Xharbour e minigui. Obrigado
Inibir fechamento de janela
DesabilitaX()
Código: Selecionar todos
#pragma BEGINDUMP
#include "windows.h"
#include "shlobj.h"
#include "hbapi.h"
#include "math.h"
#include "hbvm.h"
#include "hbstack.h"
#include "hbapiitm.h"
#include "hbapigt.h"
#include "conio.h"
#include "winbase.h"
HB_FUNC ( DesabilitaX ) // DESABILITA O X da janela
{
HMENU MenuH = GetSystemMenu(GetForegroundWindow(),FALSE);
DeleteMenu(MenuH,SC_CLOSE,MF_BYCOMMAND);
}
#pragma ENDDUMP
lugab
-
LUCAS MACHADO
- Usuário Nível 1

- Mensagens: 25
- Registrado em: 31 Mai 2013 11:43
- Localização: RIO DE JANEIRO/RJ
Inibir fechamento de janela
Boa tarde Lugab, obrigado pela resposta, só agora estou respondendo pois estive viajando.
Não consegui implementar sua solução. Como falei uso xHarbour e Minigui.
Você poderia explicitar melhor? Sou iniciante em xHarbour e estou convertendo um sistema em Clipper5.2
Na aplicação, abro uma janela, preencho alguns parâmetros e clico num botão EXECUTAR, A partir deste momento não posso deixar o usuário fechar esta janela para encerrar a função.
Obrigado
Não consegui implementar sua solução. Como falei uso xHarbour e Minigui.
Você poderia explicitar melhor? Sou iniciante em xHarbour e estou convertendo um sistema em Clipper5.2
Na aplicação, abro uma janela, preencho alguns parâmetros e clico num botão EXECUTAR, A partir deste momento não posso deixar o usuário fechar esta janela para encerrar a função.
Obrigado
Inibir fechamento de janela
Lucas, eu faço assim (sugestão colhida neste fórum):
Mas é bom observar que isso impede o fechamento da janela no X (canto superior direito da janela), mas não impede o fechamento clicando com o botão direito na barra de tarefas. Isto eu não sei como fazer.
Código: Selecionar todos
REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850
function main()
HB_SETCODEPAGE('PT850')
HB_LANGSELECT('PT')
TIRA_X()
#pragma BEGINDUMP
#include "windows.h"
#include "shlobj.h"
#include "hbapi.h"
#include "math.h"
#include "hbvm.h"
#include "hbstack.h"
#include "hbapiitm.h"
#include "hbapigt.h"
HB_FUNC ( TIRA_X ) // DESABILITA O X da janela
{
HMENU MenuH = GetSystemMenu(GetForegroundWindow(),FALSE);
DeleteMenu(MenuH,SC_CLOSE,MF_BYCOMMAND);
}
#pragma ENDDUMP
Inacio de Carvalho Neto
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Inibir fechamento de janela
Se esta sua dúvida é referente MiniGui modo gráfico, suas dúvidas devem ser postadas na seção MiniGui. Pois a solução do problema pode ser diferente do que é feito no Harbour.LUCAS MACHADO escreveu:Como falei uso xHarbour e Minigui
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao

