Muy buenas foro, estoy siempre intentando hacer un dialgo con una imagen de fondo, cuyas esquinas están redondeadas, entonces quiero que se vea la imagen como si fuera el dialogo.
¿Me podeis decir como hacer esto?
Un Saludo.
#include "FiveWin.ch"
function Main()
local oDlg, oBrush, oFont
local nVar := 100
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14
DEFINE BRUSH oBrush FILENAME "\fwh\bitmaps\olga1.jpg"
DEFINE DIALOG oDlg SIZE 300,400 PIXEL ;
TITLE "Image Dialog" ;
BRUSH oBrush FONT oFont TRANSPARENT
@ 10,10 SAY "This is some Text" SIZE 80,12 PIXEL OF oDlg ;
COLOR CLR_WHITE,CLR_BLACK TRANSPARENT
@ 30,10 GET nVar PICTURE "999,999.99" SIZE 80,12 PIXEL OF oDlg RIGHT
@ 180,100 BUTTON "Close" SIZE 40,14 PIXEL OF oDlg ACTION oDlg:End()
ACTIVATE DIALOG oDlg CENTERED
RELEASE BRUSH oBrush
RELEASE FONT oFont
return nil
#include "FiveWin.ch"
function Main()
local oDlg, oBrush, oFont
local nVar := 100
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14
DEFINE BRUSH oBrush FILENAME "\fwh\bitmaps\olga1.jpg"
DEFINE DIALOG oDlg SIZE 300,400 PIXEL ;
TITLE "Image Dialog" ;
STYLE WS_POPUP ;
BRUSH oBrush FONT oFont TRANSPARENT
@ 10,10 SAY "This is some Text" SIZE 80,12 PIXEL OF oDlg ;
COLOR CLR_WHITE,CLR_BLACK TRANSPARENT
@ 30,10 GET nVar PICTURE "999,999.99" SIZE 80,12 PIXEL OF oDlg RIGHT
@ 180,100 BUTTON "Close" SIZE 40,14 PIXEL OF oDlg ACTION oDlg:End()
ACTIVATE DIALOG oDlg CENTERED ;
ON INIT RoundCorners( oDlg )
RELEASE BRUSH oBrush
RELEASE FONT oFont
return nil
static function RoundCorners( oDlg )
local aRect, hRgn
aRect := GetClientRect( oDlg:hWnd )
hRgn := CreateRoundRectRgn( aRect, 40, 40 )
SetWindowRgn( oDlg:hWnd, hRgn )
DeleteObject( hRgn )
return nil
#pragma BEGINDUMP
HB_FUNC( SETWINDOWRGN )
{
hb_retnl( SetWindowRgn( ( HWND ) hb_parnl( 1 ), ( HRGN ) hb_parnl( 2 ), TRUE ) );
}
#pragma ENDDUMP
#include "FiveWin.ch"
function Main()
local oDlg, oBrush, oFont
local nVar := 100
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14
DEFINE BRUSH oBrush FILENAME "Anboto.bmp"
DEFINE DIALOG oDlg SIZE 300,400 PIXEL ;
TITLE "Image Dialog" ;
STYLE WS_POPUP ;
BRUSH oBrush FONT oFont TRANSPARENT
@ 10,10 SAY "This is some Text" SIZE 80,12 PIXEL OF oDlg ;
COLOR CLR_WHITE,CLR_BLACK TRANSPARENT
@ 30,10 GET nVar PICTURE "999,999.99" SIZE 80,12 PIXEL OF oDlg RIGHT
@ 180,100 BUTTON "Close" SIZE 40,14 PIXEL OF oDlg ACTION oDlg:End()
ACTIVATE DIALOG oDlg CENTERED ;
ON INIT RoundCorners( oDlg )
RELEASE BRUSH oBrush
RELEASE FONT oFont
return nil
static function RoundCorners( oDlg )
local aRect, hWnd, hRgn
aRect := GetClientRect( oDlg:hWnd )
hRgn := CreateRoundRectRgn( aRect, 40, 40 )
SetWindowRgn( oDlg:hWnd, hRgn )
DeleteObject( hRgn )
return nil
#pragma BEGINDUMP
HB_FUNC( SETWINDOWRGN )
{
hb_retnl( SetWindowRgn( ( HWND ) hb_parnl( 1 ), ( HRGN ) hb_parnl( 2 ), TRUE ) );
}
#pragma ENDDUMP
#pragma BEGINDUMP
#include <Windows.h>
#include <ClipApi.h>
HB_FUNC( SETWINDOWRGN )
{
hb_retnl( SetWindowRgn( ( HWND ) hb_parnl( 1 ), ( HRGN ) hb_parnl( 2 ), TRUE ) );
}
#pragma ENDDUMP
┌────────────────────────────────────────────────────────────────────────────┐
│ FiveWin for Harbour 11.03 - Mar. 2011 Harbour development power │▄
│ (c) FiveTech, 1993-2011 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7 │█
└────────────────────────────────────────────────────────────────────────────┘█
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Compiling...
Harbour 2.1.0beta1 (Rev. 14559)
Copyright (c) 1999-2010, http://www.harbour-project.org/
Compiling 'prueba.prg' and generating preprocessed output to 'prueba.ppo'...
Lines 3839, Functions/Procedures 2
Generating C source output to 'prueba.c'... Done.
Embarcadero C++ 6.30 for Win32 Copyright (c) 1993-2010 Embarcadero Technologies,
Inc.
prueba.c:
Warning W8065 prueba.prg 49: Call to function 'hb_parnl' with no prototype in fu
nction HB_FUN_SETWINDOWRGN
Warning W8065 prueba.prg 49: Call to function 'hb_parnl' with no prototype in fu
nction HB_FUN_SETWINDOWRGN
Warning W8065 prueba.prg 49: Call to function 'hb_retnl' with no prototype in fu
nction HB_FUN_SETWINDOWRGN
Turbo Incremental Link 6.10 Copyright (c) 1997-2010 Embarcadero Technologies, In
c.
* Application successfully built *
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: cmsoft and 100 guests