Alterar texto...

Post Reply
LordJonas
Posts: 35
Joined: Wed Jun 30, 2010 8:04 pm

Alterar texto...

Post by LordJonas »

Boas.

Estou avaliando o FWH 6.12 / xHarbour / BCC++ 5.82 e logo no primeiro programa que testei aconteceu um erro estranho.

Este é o módulo que me está dando problemas na sua execução...

Code: Select all

// ------------------------------------------------------------------------------------ //
// -------------- Controlo da barra de estado e suas mensagens -------------- //
// ----------------------------------------------------------------------------------- //

FUNCTION ChgCtrl( nOpcao, oMenu )

    DO CASE
       CASE nOpcao == 1
            IF ! oWndf:oMsgBar:lClock
                 oWndf:oMsgBar:ClockOn()
                 oClock:cMsg := "Desactivar relógio na barra de estado"
                 oClock:SetCheck( .T. )
            ELSE
                 oWndf:oMsgBar:ClockOff()
                 oClock:cMsg := "Activar relógio na barra de estado"
                 oClock:SetCheck( .F. )
                 oMenu:Refresh()
            ENDIF
       CASE nOpcao == 2
            IF ! oWndf:oMsgBar:lDate
                 oWndf:oMsgBar:DateOn()
                 oDate:cMsg := "Desactivar a data na barra de estado"
                 oDate:SetCheck( .T. )
            ELSE
                 oWndf:oMsgBar:DateOff()
                 oDate:cMsg := "Activar data na barra de estado"
                 oDate:SetCheck( .F. )
                 oMenu:Refresh()
            ENDIF
       CASE nOpcao == 3
            IF ! oWndf:oMsgBar:lKbd
                 oWndf:oMsgBar:KeybOn()
                 oKeyb:cMsg := "Desactivar estado teclado na barra de estado"
                 oKeyb:SetCheck( .T. )
            ELSE
                 oWndf:oMsgBar:KeybOff()
                 oKeyb:cMsg := "Activar estado do teclado na barra de estado"
                 oKeyb:SetCheck( .F. )
                 oMenu:Refresh()
            ENDIF
    ENDCASE
    
return nil
O programa executa na perfeição até ao momento em que clico na opção "Relógio" e surge então o erro.

Reproduzo aqui o conteúdo do log de erro:
Application
===========
Path and name: L:\Projectos\FMUS\FMUS.EXE (32 bits)
Size: 1,323,008 bytes
Time from start: 0 hours 0 mins 47 secs
Error occurred at: 01/07/10, 01:02:38
Error description: Error BASE/1004 Message not found: TMSGBAR:LCLOCK

Stack Calls
===========
Called from: => TMSGBAR:ERROR(179)
Called from: tobject.prg => (b)HBOBJECT:HBOBJECT(105)
Called from: => TMSGBAR:MSGNOTFOUND(0)
Called from: MSGBAR.PRG => TMSGBAR:LCLOCK(167)
Called from: FMUS.000 => CHGCTRL(122)
Called from: FMUS.000 => (b)FMUSMENU(96)
Called from: MENU.PRG => TMENU:COMMAND(0)
Called from: WINDOW.PRG => TWINDOW:COMMAND(0)
Called from: MDIFRAME.PRG => TMDIFRAME:COMMAND(0)
Called from: WINDOW.PRG => TMDIFRAME:HANDLEEVENT(0)
Called from: WINDOW.PRG => _FWH(0)
Called from: => WINRUN(0)
Called from: WINDOW.PRG => TMDIFRAME:ACTIVATE(0)
Called from: FMUS.000 => MAIN(77)

System
======
CPU type: Intel(R) Pentium(R) 4 CPU 3.00GHz 3000 Mhz
Hardware memory: 2047 megs

Free System resources: 90 %
GDI resources: 90 %
User resources: 90 %

Compiler version: xHarbour build 0.99.71 Intl. (SimpLex)
Windows version: 5.1, Build 2600 Service Pack 3

Windows total applications running: 38
1 TF_FloatingLangBar_WndTitle
2 CiceroUIWndFrame
3 M
4 Default IME
5 Menu 'Iniciar'
6 SysFader
7 Fine Music Projects
8 FiveTech Software tech support forums • Post a new topic - Windows Internet Explorer
9 Gerenciador de Ajuda
10 Preview de Impressão
11 Page Setup
12 HintInfoWindow
13 Ir para
14 Lista de Funções
15 String Editor
16 Editor
17 Localizar em Arquivo(s)
18 Módulo principal
19 1 - 45
20 xDev Studio v0.72 - [L:\Projectos\FMUS\prg\FMUS.prg (Alterado)]
21 SerLa
22 New PC Studio
23 MCI command handling window
24 Acrobat IEHelper
25 AcroStubUnloadWClass
26 DDE Server Window
27 Avira AntiVir Personal - Free Antivirus - SysTray
28 CtHelper32
29 CtSpkHlp
30 Creative Volume Control
31 CTDVDDET
32 MediaCenter
33 Connections Tray
34 Voltímetro
35 MS_WebcheckMonitor
36 NVSVCPMMWindowClass
37 GDI+ Window
38 Program Manager

Variables in use
================
Procedure Type Value
==========================
TMSGBAR:ERROR
Param 1: C "Message not found"
Param 2: C "TMSGBAR"
Param 3: C "LCLOCK"
Param 4: N 1004
Local 1: U
(b)HBOBJECT:HBOBJECT
Param 1: O Class: TMSGBAR
Param 2: C "LCLOCK"
TMSGBAR:MSGNOTFOUND
Param 1: C "LCLOCK"
TMSGBAR:LCLOCK
CHGCTRL
Param 1: N 1
Param 2: O Class: TMENU
(b)FMUSMENU
Param 1: O Class: TMENUITEM
TMENU:COMMAND
Param 1: N 20002
Local 1: O Class: TMENU
Local 2: O Class: TMENUITEM
TWINDOW:COMMAND
Param 1: N 20002
Param 2: N 0
Local 1: O Class: TMDIFRAME
Local 2: N 0
Local 3: N 20002
Local 4: N 0
TMDIFRAME:COMMAND
Param 1: N 20002
Param 2: N 0
Local 1: O Class: TMDIFRAME
Local 2: L .F.
TMDIFRAME:HANDLEEVENT
Param 1: N 273
Param 2: N 20002
Param 3: N 0
_FWH
Param 1: N 0
Param 2: N 273
Param 3: N 20002
Param 4: N 0
Param 5: N 1
Local 1: O Class: TMDIFRAME
WINRUN
Param 1: N 6881788
TMDIFRAME:ACTIVATE
Param 1: C "MAXIMIZED"
Param 2: U
Param 3: U
Param 4: U
Param 5: U
Param 6: U
Param 7: U
Param 8: B {|| ... }
Param 9: U
Param 10: U
Param 11: U
Param 12: U
Param 13: U
Param 14: U
Param 15: U
Param 16: U
Param 17: U
Param 18: U
Param 19: U
Local 1: O Class: TMDIFRAME
Local 2: U
Local 3: U
MAIN
Local 1: O Class: TICON
Local 2: U
Local 3: U
Local 4: O Class: TBAR
Local 5: U

Linked RDDs
===========
DBF
DBFFPT
DBFBLOB
DBFCDX
DBFNTX

DataBases in use
================

Classes in use:
===============
1 HASHENTRY
2 HBCLASS
3 HBOBJECT
4 TWINDOW
5 TCONTROL
6 TICON
7 TBRUSH
8 TMDIFRAME
9 TMENU
10 TMENUITEM
11 TMDICLIENT
12 TFONT
13 TBAR
14 TRECT
15 TBTNBMP
16 TMSGBAR
17 TMSGITEM
18 TTIMER
19 TDIALOG
20 ERROR
21 TREG32

Memory Analysis
===============
118 Static variables

Dynamic memory consume:
Actual Value: 0 bytes
Highest Value: 0 bytes
Alguém me explica o que se passa e como ultrapassar esta situação ?

Muito obrigado,

João Ferreira
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Alterar texto...

Post by Antonio Linares »

Joao,

Cambia estas líneas:

Code: Select all

            IF oWndf:oMsgBar:oClock == nil // ! oWndf:oMsgBar:lClock
                 oWndf:oMsgBar:ClockOn()
 

Code: Select all

            IF oWndf:oMsgBar:oDate == nil // ! oWndf:oMsgBar:lDate
                 oWndf:oMsgBar:DateOn()
 

Code: Select all

            IF oWndf:oMsgBar:oKeyNum == nil // ! oWndf:oMsgBar:lKbd
                 oWndf:oMsgBar:KeybOn() 
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
LordJonas
Posts: 35
Joined: Wed Jun 30, 2010 8:04 pm

Re: Alterar texto...

Post by LordJonas »

Olá...

Gracias António por la sugestion. Com lo cambio en lo codigo fuente se ha resolvido.

:P
Post Reply