Page 1 of 2

DIALOG

Posted: Mon Dec 19, 2005 11:17 am
by remecd
I have this function:


#include "FWCE.ch"

************************************
FUNCTION m_DaNe(cMsg,aBtn,cTitle)
************************************
LOCAL oDlg

DEFINE DIALOG oDlg RESOURCE "msgDaNe"
REDEFINE SAY ID 3 OF oDlg PROMPT cMsg
REDEFINE BUTTON ID 1 OF oDlg PROMPT aBtn[1] ACTION oDlg:End(1)
REDEFINE BUTTON ID 2 OF oDlg PROMPT aBtn[2] ACTION oDlg:End(2)
ACTIVATE DIALOG oDlg
RETURN (oDlg:nResult)



1. how can I use (start) debuger ?
2. how can I change the caption (title) and background color of DIALOG ?
3. how can I change the background color of REDEFINE SAY
4. it is posible to redefine the size (width,height) of DIALOG after (before) it's activated ?


Thank you!

Re: DIALOG

Posted: Mon Dec 19, 2005 12:35 pm
by Richard Chidiak
remecd wrote:I have this function:


#include "FWCE.ch"

************************************
FUNCTION m_DaNe(cMsg,aBtn,cTitle)
************************************
LOCAL oDlg

DEFINE DIALOG oDlg RESOURCE "msgDaNe"
REDEFINE SAY ID 3 OF oDlg PROMPT cMsg
REDEFINE BUTTON ID 1 OF oDlg PROMPT aBtn[1] ACTION oDlg:End(1)
REDEFINE BUTTON ID 2 OF oDlg PROMPT aBtn[2] ACTION oDlg:End(2)
ACTIVATE DIALOG oDlg
RETURN (oDlg:nResult)



1. how can I use (start) debuger ?
2. how can I change the caption (title) and background color of DIALOG ?
3. how can I change the background color of REDEFINE SAY
4. it is posible to redefine the size (width,height) of DIALOG after (before) it's activated ?


Thank you!


1. Debugger : i don't know maybe Antonio can answer this one.

2 . Caption and color

DEFINE DIALOG oDlg RESOURCE "msgDaNe" title "xxxxx" color clr1,clr2

Clr1 and clr2 can be nrgb(.....) or CLR_WHITE, CLR_BLUE etc...

3. Same for Redefine say just add color xx,xx at the end

4. You can always change dialog size at activation time. Use the on init clause for this

ACTIVATE DIALOG ODLG ON INIT odlg:move(xx,xx) or anyother function

:)

Richard

Posted: Mon Dec 19, 2005 12:45 pm
by Antonio Linares
> 1. Debugger : i don't know maybe Antonio can answer this one.

Windows for Pocket PC doesn't have a console window (text mode), so we can't use Harbour's own debugger.

We do recommend to use MsgInfo() calls to trace certain values, set breakpoints, etc.

DIALOG

Posted: Mon Dec 19, 2005 5:20 pm
by remecd
Sorry, it doesn't work yet.
I have exactly this program:


#include "FWCE.ch"
#include "FiveWin.ch"

********************
FUNCTION Main()
********************
DEFINE WINDOW owMain TITLE 'sdsdsd'
ACTIVATE WINDOW owMain ON CLICK m_DaNe('Something...',{'Yes','No'},'Atention !!!')
return nil


************************************
FUNCTION m_DaNe(cMsg,aBtn,cTitle)
************************************
LOCAL oDlg

DEFINE DIALOG oDlg RESOURCE "msgDaNe" TITLE 'BlaBla'
REDEFINE SAY ID 3 OF oDlg PROMPT cMsg
REDEFINE BUTTON ID 1 OF oDlg PROMPT aBtn[1] ACTION oDlg:End(1)
REDEFINE BUTTON ID 2 OF oDlg PROMPT aBtn[2] ACTION oDlg:End(2)
ACTIVATE DIALOG oDlg
RETURN (oDlg:nResult)


If I don't INCLUDE "FiveWin.ch", compiler shown error in "DEFINE DIALOG" row.
If I INCLUDE "FiveWin.ch", then when I start exe, error shows:

Message not found.
TWINDOW:BMOVED

One stupid question: which INCLUDE file is for programing in PPC - I'm beginner in PPC :)

Thank you, Richard & Antonio

Re: DIALOG

Posted: Mon Dec 19, 2005 7:09 pm
by Enrico Maria Giordano
#include "Fwce.ch"

of course. :-)

EMG

Posted: Mon Dec 19, 2005 9:24 pm
by Antonio Linares
#include "Fwce.ch" should be enough to compile your PRG without errors.

Please try it and it you still get an error please tell us on what line you get the error.

Posted: Wed Dec 21, 2005 8:10 am
by remecd
I INCLUDE only FWCE.ch now

When compile I get error:
tmp.prg(16) Error E0030 Syntax error: "parse error at 'DIALOG'"

Posted: Wed Dec 21, 2005 8:18 am
by Enrico Maria Giordano
The following sample compiles fine for me:

Code: Select all | Expand

#include "Fwce.ch"


FUNCTION MAIN()

    LOCAL oDlg

    DEFINE DIALOG oDlg;
           RESOURCE "TEST"

    ACTIVATE DIALOG oDlg;
             CENTER

    RETURN NIL


EMG

Posted: Wed Dec 21, 2005 9:09 am
by remecd
I added title to dialog...

DEFINE DIALOG oDlg RESOURCE "msgDaNe" TITLE 'BlaBla'

Without TITLE working OK

Posted: Wed Dec 21, 2005 9:20 am
by Enrico Maria Giordano
Ok, I confirm the problem.

EMG

Posted: Wed Dec 21, 2005 1:34 pm
by pawelu
Hello,

title clause should be declared in resource file, then works ok
eg:

Code: Select all | Expand

DialogId DIALOG DISCARDABLE 0, 0, 118, 50
STYLE WS_POPUP|DS_MODALFRAME|WS_CAPTION|WS_VISIBLE
CAPTION "Dialog Title"
BEGIN
// dialog control
END


Regards
Pawel

Posted: Wed Dec 21, 2005 1:47 pm
by Enrico Maria Giordano
It should work from code only.

EMG

Posted: Thu Dec 22, 2005 6:57 am
by remecd
pawelu wrote:Hello,

title clause should be declared in resource file, then works ok
eg:

Code: Select all | Expand

DialogId DIALOG DISCARDABLE 0, 0, 118, 50
STYLE WS_POPUP|DS_MODALFRAME|WS_CAPTION|WS_VISIBLE
CAPTION "Dialog Title"
BEGIN
// dialog control
END


Regards
Pawel


Thank you, PawelU. I know that.
But I need to change caption, backcolor and size of dialog later in my code, not in .RC file.


I need a modal window with caption, backcolor and size(width,height). All this parameters are declared and known before I build the window. Is this possible in PPC?

Regards, Darjo

Posted: Thu Dec 22, 2005 7:14 am
by Antonio Linares
Darjo,

You may do it this way:

Code: Select all | Expand

ACTIVATE DIALOG oDlg;
   ON INIT ( oDlg:SeText( "newTitle" ),;
             oDlg:nWidth( 100 ),;
             oDlg:nHeight( 100 ),;
             WndCenter( oDlg:hWnd ) )

Posted: Thu Dec 22, 2005 12:28 pm
by remecd
Antonio Linares wrote:Darjo,

You may do it this way:

Code: Select all | Expand

ACTIVATE DIALOG oDlg;
   ON INIT ( oDlg:SeText( "newTitle" ),;
             oDlg:nWidth( 100 ),;
             oDlg:nHeight( 100 ),;
             WndCenter( oDlg:hWnd ) )


A little mistake: SeText( -> SetText(
This working now. :)

But what about BACKGROUND color of DIALOG ?

In which help file can i find all propertis and method for classes?
I look in FiveWinClass but the most number does't work (or i don't know how to use them ???).

Darjo