FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour DIALOG NOWAIT no se ve el SAY
Posts: 389
Joined: Wed Nov 29, 2006 01:51 PM
DIALOG NOWAIT no se ve el SAY
Posted: Sun Mar 04, 2012 03:09 PM
Pues eso, este codigo no se ve el say, solo se ve cuando se cierra el dialogo :

Code (fw): Select all Collapse
      cCaption:= "Cargando informaci贸n de la Planilla "+ALLTRIM(STR(oDbf:numero))

      DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 0,-14 bold

      DEFINE DIALOG oDlg RESOURCE "MSGWAIT"

      REDEFINE SAY oSay PROMPT cCaption ID 101 FONT oFont UPDATE                        // 

      ACTIVATE DIALOG oDlg NOWAIT
     
      ..... otro codigo

      oDlg:End()
      oFont:End()


el .rc

Code (fw): Select all Collapse
MSGWAIT DIALOG DISCARDABLE 34, 33, 342, 15
STYLE WS_CHILD|DS_3DLOOK|DS_CENTER|WS_CAPTION|WS_VISIBLE
CAPTION "Espere, por favor..."
CLASS "bordlg"
FONT 12, "MS Sans Serif"
BEGIN
  CONTROL "Text", 101, "Static", SS_CENTER|WS_GROUP, 3, 3, 336, 8
END


salu2.
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Mon Mar 05, 2012 12:19 PM
Ariel;
Hice la prueba as铆:
Code (fw): Select all Collapse
#include "FiveWin.ch"
static oWnd

function Main()
local oWnd, ;
聽 聽 聽 oMenu

聽 聽SET RESOURCES TO "testsay.dll"

聽 聽 聽 MENU oMenu
聽 聽 聽 聽 聽MENUITEM "&Testsay" ;
聽 聽 聽 聽 聽ACTION VerTxt()
聽 聽 聽 ENDMENU

聽 聽 聽 DEFINE Window oWnd ;
聽 聽 聽 聽 聽 MENU oMenu

聽 聽 聽 ACTIVATE Window oWnd

聽 聽SET RESOURCES TO

return nil

procedure VerTxt()
local oDlg, oFont, oSay, ;
聽 聽 聽 cCaption

聽 聽 聽 cCaption:= "Cargando informaci贸n de la Planilla..."+CRLF+"(hecho con " +FWVERSION+")"

聽 聽 聽 DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 0,-14 bold

聽 聽 聽 DEFINE DIALOG oDlg RESOURCE "dlg_datos"

聽 聽 聽 REDEFINE SAY oSay PROMPT cCaption ID 101 FONT oFont UPDATE

聽 聽 聽 ACTIVATE DIALOG oDlg NOWAIT

// Fin


El .rc no lo incrusto, hice una .dll (aunque con esto no quiera decir que es tu problema)
Code (fw): Select all Collapse
#define DIALOG_1聽 聽 1
1 24 "../../bat/theme.man"
dlg_datos DIALOG 152, 59, 161, 43
STYLE 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX
CAPTION "Datos del Contribuyente"
FONT 11, "Calibri"
{
聽LTEXT "", 12, 104, 95, 32, 8
聽CONTROL "Text", 101, "STATIC", SS_LEFTNOWORDWRAP | WS_CHILD | WS_VISIBLE | WS_GROUP, 14, 4, 132, 14
}

Fijate que el Style, s铆 es distinto del tuyo
Uso FWH1009
Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 389
Joined: Wed Nov 29, 2006 01:51 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Mon Mar 05, 2012 05:38 PM

Mario,

gracias pero nones, esto hasta fwh 11.05 funcionaba ok, no se que ha cambiado.

Salu2, grax

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Mon Mar 05, 2012 09:06 PM
Ariel,

Del RC tienes que quitar:

WS_CHILD (STYLE ...)
y
CLASS "bordlg"

Con esos cambios debe funcionar correctamente. Aqui tienes un ejemplo completo y funcionando usando tu c贸digo:

ariel.prg
Code (fw): Select all Collapse
#include "FiveWin.ch"

function Main()

聽 聽local oWnd, oFont
聽 聽
聽 聽DEFINE FONT oFont NAME "Verdana" SIZE 0, -12

聽 聽DEFINE WINDOW oWnd

聽 聽ACTIVATE WINDOW oWnd ;
聽 聽 聽 ON INIT Another( oFont )
聽 聽 聽 
聽 聽oFont:End() 聽 

return nil

function Another( oFont )

聽 聽local oDlg, oSay, cCaption := "Test"

聽 聽DEFINE DIALOG oDlg RESOURCE "MSGWAIT"

聽 聽REDEFINE SAY oSay PROMPT cCaption ID 101 FONT oFont UPDATE 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 

聽 聽ACTIVATE DIALOG oDlg NOWAIT

return nil


ariel.rc
Code (fw): Select all Collapse
MSGWAIT DIALOG DISCARDABLE 34, 33, 342, 15
STYLE DS_3DLOOK|DS_CENTER|WS_CAPTION|WS_VISIBLE
CAPTION "Espere, por favor..."
FONT 12, "MS Sans Serif"
BEGIN
聽 CONTROL "Text", 101, "Static", SS_CENTER|WS_GROUP, 3, 3, 336, 8
END


regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Tue Mar 06, 2012 03:45 AM

Antonio,,,,
Como se quita el WS_CHILD (STYLE ...) y CLASS "bordlg" en un recusro tipo .RES ??
Salu2

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Tue Mar 06, 2012 07:34 AM

Willly,

Desde el editor de recursos, 贸 s谩lvalo como RC, lo editas como texto y lo vuelves a compilar a RES

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 389
Joined: Wed Nov 29, 2006 01:51 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Tue Mar 06, 2012 09:38 AM
Antonio,

gracias por tu respuesta, de todos modos desde codigo tampoco me funcion贸, con la diferencia, q unos segundos despues de creado el dialogo mostraba el texto, como solucion al primer planteo hice esto y ahi si funcion贸 correctamente :

cCaption:= "Cargando informaci贸n de la Planilla "+ALLTRIM(STR(oDbf:numero))

DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 0,-14 bold

DEFINE DIALOG oDlg RESOURCE "MSGWAIT"

REDEFINE SAY oSay PROMPT cCaption ID 101 OF oDlg FONT oFont UPDATE //

ACTIVATE DIALOG oDlg NOWAIT

oSay:SetText( cCaption )
oSay:Refresh()


Salu2, Ariel.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Tue Mar 06, 2012 10:16 AM

Ariel,

El ejemplo que yo he publicado, te funciona bien ? gracias :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 389
Joined: Wed Nov 29, 2006 01:51 PM
Re: DIALOG NOWAIT no se ve el SAY
Posted: Tue Mar 06, 2012 10:31 AM
Antonio,

si a tu ej. lo corres asi como esta anda ok, pero fijate q en un dialog nowait es para q x ejemplo muestre un mensaje mientras se ejecuta un proceso, bueno, si al codigo q pusiste le agregas Inkey( 5 ), veras q se retarda el pintado del texto.

Code (fw): Select all Collapse
function Another( oFont )

   local oDlg, oSay, cCaption := "Test"

   DEFINE DIALOG oDlg RESOURCE "MSGWAIT"

   REDEFINE SAY oSay PROMPT cCaption ID 101 FONT oFont UPDATE                         

   ACTIVATE DIALOG oDlg NOWAIT

   [color=#FF0000]Inkey(5)[/color]

Saludos.

Continue the discussion