No compila TextBox!/ No compiles TextBox

HMG en Español

Moderator: Rathinagiri

Post Reply
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

No compila TextBox!/ No compiles TextBox

Post by Javier Tovar »

Hola a todos!

No encuentro la causa el por que no compila este simple TextBox usando la Standard Syntax (xBase Style), pero si uso la sintaxis alterna si me lo compila sin problemas, y quisiera encontrar el "error", ya que quiero utilizar esta sintaxis (Standard Syntax) por que ocupa menos espacio (un renglón!)

Alguna idea?

Mil gracias de antemano.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Hello everyone!

I find the causes that do not compile this simple TextBox using the Standard Syntax (xBase Style), but if you use the alternate syntax if I compile it without problems, and I would find the "error" because I want to use this syntax (Standard Syntax) that occupies less space (one row!)

Any ideas?

Thanks in advance.

Code: Select all

/*
* HMG InputMask Demo
* (c) 2003 Roberto lopez
*/

/*

	InputMask String For numeric textBox

        9	Displays digits
        $       Displays a dollar sign in place of a leading space 
        *       Displays an asterisk in place of a leading space 
        .       Specifies a decimal point position
        ,       Specifies a comma position

	Format String

        C       Displays CR after positive numbers
        X       Displays DB after negative numbers
        (       Encloses negative numbers in parentheses
	E	Displays points as thousand separator and comma as decimal 
		separator.

*/

#include "hmg.ch"

Function Main

	SET NAVIGATION EXTENDED

	DEFINE WINDOW Form_1 ;
		AT 0,0 ;
		WIDTH 400 ;
		HEIGHT 500 ;
		TITLE 'InputMask Demo' ;
		MAIN 

		DEFINE MAIN MENU
			POPUP 'Test'
				ITEM 'Get Text_1 Value' ACTION MsgInfo (Str(Form_1.Text_1.Value))
				ITEM 'Set Text_1 Value' ACTION Form_1.Text_1.Value := 123456.12
				ITEM 'Set Text_1 Focus' ACTION Form_1.Text_1.SetFocus
			END POPUP
		END MENU

		@ 10,10 TEXTBOX Text_1 VALUE 1234567.12 NUMERIC INPUTMASK "$9,999,999.99" NAME 'Arial' SIZE 12 TOOLTIP "" BACKCOLOR BLUE FONTCOLOR BLACK ON GOTFOCUS MsgBox('Hola')		

/*
      @ <nRow> ,<nCol>
            TEXTBOX <ControlName>
            [ OF | PARENT <ParentWindowName> ]
            [ HEIGHT <nHeight> ]
            [ FIELD <FieldName> ]
            [ VALUE <nValue> ]
            [ READONLY ]
            [ WIDTH <nWidth> ]
            [ NUMERIC ] [ INPUTMASK <cMask> ]
            [ FORMAT <cFormat> ] | PASSWORD ]
            [ FONT <cFontName> SIZE <nFontSize> ]
            [ BOLD ] [ ITALIC ] [ UNDERLINE ] [ STRIKEOUT ]
            [ TOOLTIP <cToolTipText> ]
            [ BACKCOLOR <aBackColor> ]
            [ FONTCOLOR <aFontColor> ]
            [ DISABLEDBACKCOLOR <aDisabledBackColor> ]
            [ DISABLEDFONTCOLOR <aDisabledFontColor> ]
            [ DATE ]
            [ MAXLENGTH <nInputLength> ]
            [ UPPERCASE | LOWERCASE ]
            [ ON GOTFOCUS <OnGotFocusProcedur> | <bBlock> ]
            [ ON CHANGE <OnChangeProcedure> | <bBlock> ]
            [ ON LOSTFOCUS <OnLostFocusProcedure> | <bBlock> ]
            [ ON ENTER <OnEnterProcedure> | <bBlock> ]
            [ RIGHTALIGN ]
            [ INVISIBLE ]
            [ NOTABSTOP ]
            [ HELPID <nHelpId> ]



      DEFINE TEXTBOX Text_1
            PARENT Form_1
            ROW 10
            COL 10
            VALUE 123456.12
            INPUTMASK "$ 9,999,999.99"
            FONTNAME "Courrier New"
            FONTSIZE 9
            FONTBOLD .T.
            FONTITALIC .T.
            FONTUNDERLINE .T.
            FONTSTRIKEOUT .T.
            TOOLTIP "Soy TextBox!"
            BACKCOLOR BLACK
            FONTCOLOR BLUE
            DATATYPE NUMERIC
            ONGOTFOCUS NIL
      END TEXTBOX
*/      

/*
		@ 10,10 TEXTBOX Text_1 ;
		VALUE 1234567.12 ;
		NUMERIC INPUTMASK "$9,999,999.99" 
*/

		@ 50,10 TEXTBOX Text_2 ;
		VALUE 1234.56 ;
		NUMERIC INPUTMASK "$9,999.99" FORMAT 'CX' 


		@ 90,10 TEXTBOX Text_3 ;
		VALUE -123.0 ;
		NUMERIC INPUTMASK "999,999.99" FORMAT '('

		@ 130,10 TEXTBOX Text_4 ;
		VALUE 123.0 ;
		NUMERIC INPUTMASK "999.9" 	

		@ 170,10 TEXTBOX Text_5 ;
		VALUE -123.45 ;
		NUMERIC INPUTMASK "$9,999.99" FORMAT 'CX'

		@ 210,10 TEXTBOX Text_6 ;
		VALUE 1234.56 ;
		NUMERIC INPUTMASK "$***,999.99" 

		@ 250,10 TEXTBOX Text_7 ;
		VALUE 12345678.12 ;
		NUMERIC INPUTMASK "99999999.99" 

		@ 290,10 TEXTBOX Text_8 ;
		VALUE 1.1 ;
		NUMERIC INPUTMASK "9.9" 

		@ 330,10 TEXTBOX Text_9 ;
		VALUE 1234567890.12 ;
		NUMERIC INPUTMASK "$9999999999.99" 

		@ 370,10 TEXTBOX Text_10 ;
		VALUE 123456 ;
		NUMERIC INPUTMASK "$9999999" 

		@ 410,10 TEXTBOX Text_11 ;
			VALUE 1234.56 ;
			NUMERIC INPUTMASK "99,999.99" FORMAT 'E'

	END WINDOW

	CENTER WINDOW Form_1

	ACTIVATE WINDOW Form_1

Return

User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

No compila TextBox!/ No compiles TextBox

Post by Pablo César »

Hola Javier,

Probá con:

Code: Select all

@ 10,10 TEXTBOX Text_1 VALUE 1234567.12 FONT 'Arial' SIZE 12 TOOLTIP "" BACKCOLOR BLUE FONTCOLOR BLACK NUMERIC INPUTMASK "$9,999,999.99" ON GOTFOCUS MsgBox('Hola')
Parece que hay que mantener una secuencia correcta. Particularmente esta forma a mi mucho no me agrada.

Pero si quieres hacer todo en una misma linea, de otra manera tambien puedes utilizar la funcion directa:

Code: Select all

_DefineMaskedTextBox ( <"name">, <"parent">, <col>, <row>, <inputmask> , <w> , <value> , <fontname> , <fontsize> , <tooltip>   , <{lostfocus}>  , <{gotfocus}> , <{change}> , <height> , <{enter}> , <.RightAlign.>  , <helpid> , <format> ,<.bold.>, <.italic.>, <.underline.>, <.strikeout.>  , <"field">  , <backcolor> , <fontcolor> , <.readonly.> , <.invisible.> , <.notabstop.>  , <disabledbackcolor> , <disabledfontcolor> )
Hay algunos parámetros que no son imprescindibles. Para saber cuales, analizá el código fuente en C:\hmg.3.4.0\SOURCE\h_textbox.prg. Por aqui es una forma a más para enterarte desde las tripas del HMG. :)

Pero lo ideal es que uses los DEFINEs, son mas seguros. Seguro que quiero decir es con respecto a su secuencia, no precisa estar en orden como @ ...
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: No compila TextBox!/ No compiles TextBox

Post by Javier Tovar »

Gracias Pablo Cesar,

Probare con tu muestra!
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: No compila TextBox!/ No compiles TextBox

Post by Javier Tovar »

Aunque si sabia de la posición de las propiedades, pero ni aun siguiendo lo que esta escrito le di.

Voy a ver algo de C:\hmg.3.4.0\SOURCE\h_textbox.prg.

Saludos
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

Re: No compila TextBox!/ No compiles TextBox

Post by Pablo César »

Javier Tovar wrote:... pero ni aun siguiendo lo que esta escrito le di.
Disculpame Javier, no entendi.
Talvez una expresion idiomatica regional, que no sé a lo que te refieres.
Pero si te refieres a que no te diste cuenta, no te preocupes. Eso nos pasa a todos.
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: No compila TextBox!/ No compiles TextBox

Post by Javier Tovar »

Hola Pablo César,

Te aclaro:

Lo que pasa que seguí la posición de las propiedades del control TEXTBOX como esta en la ayuda de @ x,y TEXTBOX ...... y ni aun así logre compilar mi muestra. Eso es lo que trate de decir.

Saludos.
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: No compila TextBox!/ No compiles TextBox

Post by Javier Tovar »

Y con referente a la frase "le di" si es una expresion idiomatica regional que significa: NO LE ATINE, como cuando juegas el tiro al blanco.

Saludos
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

No compila TextBox!/ No compiles TextBox

Post by Pablo César »

Javier Tovar wrote:Lo que pasa que seguí la posición de las propiedades del control TEXTBOX como esta en la ayuda de @ x,y TEXTBOX ...... y ni aun así logre compilar mi muestra.
Hola Javier, tienes toda la razón. Ayer cuando verificaba tu código del @ .. TEXTBOX me di cuenta tambien que tu secuencia estaba correcto de acuerdo el HMGDOC. Pero como te lo habia dicho, tu código no estaba en la secuencia correcta, eso porque verifiqué el i_textbox.ch. Ahora volví a comparar y lo que percebí que el HMGDOC no estaba totalmente correcto.

Es decir, el HMGDOC está fuera de secuencia con respecto al @ TEXTBOX. Ayer mismo yo deberia haberlo chequeado por yo tambien hice lo mismo de verificarlo mediante el HMGDOC y no reultaba la compilacion con éxito.

Cabe entonces postear un mensaje en Corrections at HMG Reference (hmgdoc) (HMG Bug Reports) mencionando esta discrepancia. Ya mismo lo hago.

Javier Tovar wrote:Y con referente a la frase "le di" si es una expresion idiomatica regional que significa: NO LE ATINE, como cuando juegas el tiro al blanco.
Ahhh si tenés razón Javier. Ahora entiendo. Disculpame que yo no me acordaba de esta frase cuando lo acertás al tiro al blanco. En Argentina le decimos: "la pegué".
Es interesante a veces como el idioma suele adaptarse de region para otra.
Y más yo que apesar de hablarlo y escribir el español, hoy en dia utilizo el portugues para el dia a dia y algunas cosas se me escapan o hablo mal.

Gracias por tus esclarecimiento y tu paciencia amigo Javier. Menos mal que tu sabés que cuando pregunto no hay maldad.

Son actitudes como la tuya, que nos alertan cuando algo está mal y se hace algo para corregirlo. Eso si es participacion, mejor dicho REAL participacion... :lol:

Un gran abrazo,
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
Javier Tovar
Posts: 1275
Joined: Tue Sep 03, 2013 4:22 am
Location: Tecámac, México

Re: No compila TextBox!/ No compiles TextBox

Post by Javier Tovar »

Pablo César wrote:
Son actitudes como la tuya, que nos alertan cuando algo está mal y se hace algo para corregirlo. Eso si es participacion, mejor dicho REAL participacion... :lol:

Un gran abrazo,
:lol: :lol: :lol: ;)
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

No compila TextBox!/ No compiles TextBox

Post by Pablo César »

Hola Javier,

Fijate cual fué el motivo principal en este tópico lo explico.

En resumen, existen 4 formas de utilizar el TEXTBOX con @.. (Standard Syntax)

De todas formas estaba errado las secuencia de las propiedades y no está completa con las 4 sintaxis.
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
Post Reply