Jump to content
Fivewin Brasil

Mudar Cor da Dialog !!!!


laurenti

Recommended Posts

DialogBox creation from source code and redefinition for resources

DEFINE DIALOG ;

[ NAME | RESNAME | RESOURCE ] ;

[ TITLE ] ;

[ FROM , TO , ] ;

[ SIZE , ];

[ LIBRARY | DLL ] ;

[ VBX ] ;

[ STYLE ] ;

[ COLOR | COLORS [, ] ] ;

[ BRUSH ] ;

[ WINDOW | DIALOG | OF ] ;

[ PIXEL ] ;

[ ICON ] ;

[ FONT ] ;

[ HELP | HELPID ]

Making the DialogBox work

ACTIVATE DIALOG ;

[ CENTER | CENTERED ] ;

[ NOWAIT | NOMODAL ] ;

[ WHEN ] ;

[ VALID ] ;

[ ON [ LEFT ] CLICK ] ;

[ ON INIT ] ;

[ ON MOVE ] ;

[ ON PAINT ] ;

[ ON RIGHT CLICK ] ;

[ RESIZE16 ]

Em Cristo!

Rone - Itajubá(MG)id=red>

xHB build 1.1.0 (SimpLex) & BCC 5.5.1 & FW 7.12 + xDevStudio

A pessoa que pensa que sabe alguma coisa, ainda não tem a sabedoria que precisa. (1 Cor 8, 2)id=blue>

Link to comment
Share on other sites

Boa Noite,

Segue abaixo um exemplo prático:


//--------------------------------------------------------------------------

Function _Mensa( linha, aviso )

local oFont, oFont1, oBmp, oBar

DEFINE FONT oFont NAME 'Courier News' SIZE 0, -13 BOLD

DEFINE FONT oFont1 NAME 'Courier News' SIZE 0, -12 BOLD

DEFINE DIALOG oDlgESP FROM 00, 00 TO 100, 500;

STYLE nOr( DS_MODALFRAME, WS_POPUP ) PIXEL COLOR nRGB( 000, 000, 000 ), nRGB( 247, 214, 115 )

@ 10, 01 SAY oSay[ 1] PROMPT PADC( Space(80), 80 ) OF oDlgESP FONT oFont;

COLOR nRGB( 255, 000, 000 ), nRGB( 247, 214, 115 ) UPDATE PIXEL

@ 31, 01 SAY oSay[ 2] PROMPT PADC( aviso, 80 ) OF oDlgESP FONT oFont1;

COLOR nRGB( 255, 000, 000 ), nRGB( 247, 214, 115 ) UPDATE PIXEL

ACTIVATE DIALOG oDlgESP CENTER NOWAIT;

ON INIT( oDlgESP:lHelpIcon := .f.,;

oDlgESP:Move( 296, 252 ) )

oSay[ 1]:SetText( PADC( aviso, 80 ) )

// eliminacao de fontes usadas

oFont:End()

oFont1:End()

Return nil

id=code>id=code>

Luiz Augusto

São José dos Pinhais - PR

xHarbour + Fivewin + Workshop + Sql via Odbc

Vamos Aderir:"Retorne avisando se a dica funcionou"

Link to comment
Share on other sites

Bem.. mas se vc. quiser algo mais "chocante" no bom sentido é claro.. pode fazer assim;

chocante.png


DEFINE DIALOG odlg FROM 00,00 TO 08,50 ;

TITLE "..::D-1026 | ALTERAÇÕES DE REGISTROS ::.."

oDlg:lHelpIcon:=.f.

@02,13 sButton obtnSay prompt "Voltar" ;

Resource "Seguir","voltar" ;

Of odlg size 60,20 ;

Action odlg:end() xp color

ACTIVATE DIALOG oDlg Centered ;

ON PAINT ( GRADIENT( oDlg, hDC ),;

IF( hBmp != 0, DRAWMASKED( hDC, hBmp, 15, 5 ), ) ,;

oDlg:Say( 2, 10, "REGISTROS ALTERADOS COM SUCESSO",;

CLR_HBLUE, ,oFont1 , , .T. ), SysRefresh() )

IF hBmp != 0; DELETEOBJECT( hBmp ); ENDIF

Return Nil

STATIC FUNCTION GRADIENT( oDlg, hDC )

LOCAL aRect := GETCLIENTRECT( oDlg:hWnd )

LOCAL nStep := ( aRect[ 3 ] - aRect[ 1 ] ) / 256

LOCAL oBrush

LOCAL i

aRect[ 3 ] = nStep

FOR i = 255 TO 0 STEP -1

DEFINE BRUSH oBrush;

COLOR RGB( 255, i, 0 )

FILLRECT( hDC, aRect, oBrush:hBrush )

RELEASE BRUSH oBrush

aRect[ 1 ] += nStep

aRect[ 3 ] += nStep

NEXT

RETURN NIL

Return .t.

id=code>id=code>

Abraços..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmai.com

Link to comment
Share on other sites

citação:

Aproveitando o assunto,

O barra de título, os menus, e a barra de status, etm uma possibilidade de ficar com efeito '2007', tem como aplicar isso na dialog, e nos botoes a ela empregados...

informaisvrb@gmail.com

FWHX 2.6+ SQLLIB + xDev + rpv + MYSQL 5.0 / fwh808+sqllib(atual)

Msn.: mastermarvrb@msn.com


id=quote>id=quote>

Eu uso o Sbutton.. Mas voce pode fazer uso do MANIFEST para ficar com o estilo XP.

Tem duas maneiras de fazer isso.. com um codigo XML e ou colocar direto no seu arquivo RES/DLL/RC..

Usando XML.


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

type="win32"

name="MyOrganization.MyDivision.MyApp"

version="1.0.0.0"

processorArchitecture="X86"

/>

Verbal description of MyApp.

type="win32"

name="Microsoft.Windows.Common-Controls"

version="6.0.0.0"

processorArchitecture="X86"

publicKeyToken="6595b64144ccf1df"

language="*"

/>

id=code>id=code>

È SÓ SALVAR EM UM ARQUIVO COM O MESMO NOME DO SEU EXE POR EXEMPLO

Seu arquivo chama CONTAS.EXE

Salve como CONTAS.EXE.MANIFEST

e deixe junto com seu EXE.

Com Recursos, se vc. usa o PellesC basta criar um RESOURCE manifest e pronto..

Se vc. ainda usa WS.


1 24 LOADONCALL MOVEABLE

{

'3C 3F 78 6D 6C 20 76 65 72 73 69 6F 6E 3D 22 31'

'2E 30 22 20 65 6E 63 6F 64 69 6E 67 3D 22 55 54'

'46 2D 38 22 20 73 74 61 6E 64 61 6C 6F 6E 65 3D'

'22 79 65 73 22 3F 3E 0D 0A 3C 61 73 73 65 6D 62'

'6C 79 20 78 6D 6C 6E 73 3D 22 75 72 6E 3A 73 63'

'68 65 6D 61 73 2D 6D 69 63 72 6F 73 6F 66 74 2D'

'63 6F 6D 3A 61 73 6D 2E 76 31 22 20 6D 61 6E 69'

'66 65 73 74 56 65 72 73 69 6F 6E 3D 22 31 2E 30'

'22 3E 0D 0A 3C 61 73 73 65 6D 62 6C 79 49 64 65'

'6E 74 69 74 79 0D 0A 20 20 20 20 74 79 70 65 3D'

'22 77 69 6E 33 32 22 0D 0A 20 20 20 20 6E 61 6D'

'65 3D 22 4D 79 4F 72 67 61 6E 69 7A 61 74 69 6F'

'6E 2E 4D 79 44 69 76 69 73 69 6F 6E 2E 4D 79 41'

'70 70 22 0D 0A 20 20 20 20 76 65 72 73 69 6F 6E'

'3D 22 31 2E 30 2E 30 2E 30 22 0D 0A 20 20 20 20'

'70 72 6F 63 65 73 73 6F 72 41 72 63 68 69 74 65'

'63 74 75 72 65 3D 22 58 38 36 22 0D 0A 20 20 20'

'20 2F 3E 0D 0A 20 20 20 20 3C 64 65 73 63 72 69'

'70 74 69 6F 6E 3E 56 65 72 62 61 6C 20 64 65 73'

'63 72 69 70 74 69 6F 6E 20 6F 66 20 4D 79 41 70'

'70 2E 3C 2F 64 65 73 63 72 69 70 74 69 6F 6E 3E'

'0D 0A 20 20 20 20 3C 64 65 70 65 6E 64 65 6E 63'

'79 3E 0D 0A 20 20 20 20 3C 64 65 70 65 6E 64 65'

'6E 74 41 73 73 65 6D 62 6C 79 3E 0D 0A 20 20 20'

'20 3C 61 73 73 65 6D 62 6C 79 49 64 65 6E 74 69'

'74 79 0D 0A 20 20 20 20 20 20 20 20 74 79 70 65'

'3D 22 77 69 6E 33 32 22 0D 0A 20 20 20 20 20 20'

'20 20 6E 61 6D 65 3D 22 4D 69 63 72 6F 73 6F 66'

'74 2E 57 69 6E 64 6F 77 73 2E 43 6F 6D 6D 6F 6E'

'2D 43 6F 6E 74 72 6F 6C 73 22 0D 0A 20 20 20 20'

'20 20 20 20 76 65 72 73 69 6F 6E 3D 22 36 2E 30'

'2E 30 2E 30 22 0D 0A 20 20 20 20 20 20 20 20 70'

'72 6F 63 65 73 73 6F 72 41 72 63 68 69 74 65 63'

'74 75 72 65 3D 22 58 38 36 22 0D 0A 20 20 20 20'

'20 20 20 20 70 75 62 6C 69 63 4B 65 79 54 6F 6B'

'65 6E 3D 22 36 35 39 35 62 36 34 31 34 34 63 63'

'66 31 64 66 22 0D 0A 20 20 20 20 20 20 20 20 6C'

'61 6E 67 75 61 67 65 3D 22 2A 22 0D 0A 20 20 20'

'20 2F 3E 0D 0A 20 20 20 20 3C 2F 64 65 70 65 6E'

'64 65 6E 74 41 73 73 65 6D 62 6C 79 3E 0D 0A 20'

'20 20 20 3C 2F 64 65 70 65 6E 64 65 6E 63 79 3E'

'0D 0A 3C 2F 61 73 73 65 6D 62 6C 79 3E 0D 0A 0D'

'0A'

}

id=code>id=code>

Salve como RC e compile junto com seu projeto..

Veja se é isso que C tá procurando fazer..

Abraços..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmai.com

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...