Page 1 of 1

Pintar un pixel o varios pixeles

Posted: Wed Mar 07, 2007 4:54 pm
by softruz
Muy buenas, alguien me podría decir como se pinta un pixel o pixeles en un dialogo y aplicarte un color.

Un Saludo.

Posted: Wed Mar 07, 2007 7:36 pm
by Antonio Linares
Este es un ejemplo:

Code: Select all

#include "FWCE.ch"

function Main()

   local oDlg
   
   DEFINE DIALOG oDlg SIZE 200, 100
   
   ACTIVATE DIALOG oDlg CENTERED ;
      ON PAINT SetPixel( oDlg:hDC, 50, 50, nRGB( 0, 0, 0 ) )

return nil

#pragma BEGINDUMP

#include <hbapi.h>
#include <windows.h>

HB_FUNC( SETPIXEL )
{
   hb_retnl( SetPixel( ( HDC ) hb_parnl( 1 ), hb_parnl( 2 ), hb_parnl( 3 ), hb_parnl( 4 ) ) );
}   

#pragma ENDDUMP
Cambiando nRGB( 0, 0, 0 ) por otros valores en vez de cero, usas el color RGB que quieras

Posted: Thu Mar 08, 2007 12:21 pm
by softruz
Lo que me gustaría hacer es quitar pintar sobre el primer pixel de un bitmap y así ocultar el pixel blanco que le pongo en la esquina superior-izquiera para que no haga lo de la transparencia. ¿Sabrias decirme en que posicion se encuentra el pixel si tenemos posicionado el bitmap en @ 3,4? gracias.

Posted: Thu Mar 08, 2007 1:54 pm
by Antonio Linares
Lo más facil es que modifiques directamente el fichero BMP y le cambies el pixel 0, 0 a otro color