elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  [Solucionado] Alguien sabe Como Crear ese Efecto Blanco Y negro ....
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Solucionado] Alguien sabe Como Crear ese Efecto Blanco Y negro ....  (Leído 5,300 veces)
agus0


Desconectado Desconectado

Mensajes: 360



Ver Perfil
[Solucionado] Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« en: 13 Enero 2010, 23:11 pm »

Buenas Foro!

Tenia una duda.

¿Como puedo crear ese efecto que tiene windows xp Cunado uno aprieta el boton de apagar, que todo menos las opciones de "Apagar, Suspender y reiniciar" se pone blanco y negro???

Es decir esto



Link de la img: Clic aqui

y si no, Como hacer el de win vista o win7 cuando un soft trata de ejecutarse como admin, osea este:



[LINK de la img]

Gracias!!


« Última modificación: 14 Enero 2010, 11:24 am por agus0 » En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #1 en: 14 Enero 2010, 00:23 am »

Basicamente crea un formulario del tamaño de la pantalla, de color negro, y con la API (creo que es con SetLayeredWindow o algo asi) la haces un % transparente, y vas animando con un timer ;-)



En línea

agus0


Desconectado Desconectado

Mensajes: 360



Ver Perfil
Re: Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #2 en: 14 Enero 2010, 00:49 am »

podrias explicarme mas del uso de esta api... raul? Gracias
En línea

shug0

Desconectado Desconectado

Mensajes: 185

si puede hacerse debe hacerse


Ver Perfil WWW
Re: Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #3 en: 14 Enero 2010, 01:06 am »

si es la funcion SetLayeredWindowAttributes, puse hace un time una explicacion en el blog, aqui lo tienes:

http://c0d3-l4bs.blogspot.com/2009/11/manipular-las-transparencias-de-las.html [!= spam]
En línea

LeandroA
Moderador
***
Desconectado Desconectado

Mensajes: 760


www.leandroascierto.com


Ver Perfil WWW
Re: Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #4 en: 14 Enero 2010, 04:03 am »

Hola para el efecto de vista si podrias usar SetLayeredWindowAttributes pero para el de apagado del xp te paso un metodo convirtiendo la pantalla a escala de grices.

Agrega a un formulario: Timer1, Picture1, Command1

Código
  1. Option Explicit
  2. '*-------------------------------------*
  3. 'Autor:     Leandro Ascierto
  4. 'web:       www.leandroascierto.com.ar
  5. 'Date:      13/01/2009
  6. 'Referncia  ApiGuide
  7. 'Requimientos Timer1, Picture1, Command1
  8. '*-------------------------------------*
  9. Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
  10. Private Declare Function CreateDIBSection Lib "gdi32" (ByVal hdc As Long, pBitmapInfo As BITMAPINFO, ByVal un As Long, ByVal lplpVoid As Long, ByVal handle As Long, ByVal dw As Long) As Long
  11. Private Declare Function GetDIBits Lib "gdi32" (ByVal aHDC As Long, ByVal hBitmap As Long, ByVal nStartScan As Long, ByVal nNumScans As Long, lpBits As Any, lpBI As BITMAPINFO, ByVal wUsage As Long) As Long
  12. Private Declare Function SetDIBitsToDevice Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal dx As Long, ByVal dy As Long, ByVal SrcX As Long, ByVal SrcY As Long, ByVal Scan As Long, ByVal NumScans As Long, Bits As Any, BitsInfo As BITMAPINFO, ByVal wUsage As Long) As Long
  13. Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
  14. Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long
  15. Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
  16. Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
  17. Private Declare Function GetDC Lib "User32" (ByVal hWnd As Long) As Long
  18. Private Declare Sub SetWindowPos Lib "User32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
  19.  
  20. Private Type BITMAPINFOHEADER
  21.    biSize As Long
  22.    biWidth As Long
  23.    biHeight As Long
  24.    biPlanes As Integer
  25.    biBitCount As Integer
  26.    biCompression As Long
  27.    biSizeImage As Long
  28.    biXPelsPerMeter As Long
  29.    biYPelsPerMeter As Long
  30.    biClrUsed As Long
  31.    biClrImportant As Long
  32. End Type
  33.  
  34. Private Type RGBQUAD
  35.    rgbBlue As Byte
  36.    rgbGreen As Byte
  37.    rgbRed As Byte
  38.    rgbReserved As Byte
  39. End Type
  40.  
  41. Private Type BITMAPINFO
  42.    bmiHeader As BITMAPINFOHEADER
  43.    bmiColors As RGBQUAD
  44. End Type
  45.  
  46. Private Const BI_RGB = 0&
  47. Private Const DIB_RGB_COLORS = 0
  48.  
  49. Private Const HWND_TOPMOST      As Long = -1
  50. Private Const SWP_NOACTIVATE    As Long = &H10
  51. Private Const SWP_SHOWWINDOW    As Long = &H40
  52.  
  53. Private bi24BitInfo     As BITMAPINFO
  54. Private hBitmap         As Long
  55. Private lHdc            As Long
  56. Private bBytes()        As Byte
  57. Dim lCunter             As Long
  58.  
  59. Private Sub Command1_Click()
  60.    Unload Me
  61. End Sub
  62.  
  63. Private Sub Form_Load()
  64.    Dim TempDC As Long
  65.  
  66.    Me.BorderStyle = 0
  67.    Me.Caption = ""
  68.    Me.WindowState = vbMaximized
  69.    Me.AutoRedraw = True
  70.    Command1.Caption = "Cancelar"
  71.  
  72.    TempDC = GetDC(0)
  73.  
  74.    With bi24BitInfo.bmiHeader
  75.        .biBitCount = 24
  76.        .biCompression = BI_RGB
  77.        .biPlanes = 1
  78.        .biSize = Len(bi24BitInfo.bmiHeader)
  79.        .biWidth = Screen.Width / Screen.TwipsPerPixelX
  80.        .biHeight = Screen.Height / Screen.TwipsPerPixelY
  81.    End With
  82.  
  83.    ReDim bBytes(1 To bi24BitInfo.bmiHeader.biWidth * bi24BitInfo.bmiHeader.biHeight * 3) As Byte
  84.  
  85.    lHdc = CreateCompatibleDC(0)
  86.    hBitmap = CreateDIBSection(lHdc, bi24BitInfo, DIB_RGB_COLORS, ByVal 0&, ByVal 0&, ByVal 0&)
  87.  
  88.    SelectObject lHdc, hBitmap
  89.  
  90.    BitBlt lHdc, 0, 0, bi24BitInfo.bmiHeader.biWidth, bi24BitInfo.bmiHeader.biHeight, GetDC(0), 0, 0, vbSrcCopy
  91.    GetDIBits lHdc, hBitmap, 0, bi24BitInfo.bmiHeader.biHeight, bBytes(1), bi24BitInfo, DIB_RGB_COLORS
  92.    BitBlt Me.hdc, 0, 0, bi24BitInfo.bmiHeader.biWidth, bi24BitInfo.bmiHeader.biHeight, TempDC, 0, 0, vbSrcCopy
  93.  
  94.  
  95.  
  96.    SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, bi24BitInfo.bmiHeader.biWidth, bi24BitInfo.bmiHeader.biHeight, SWP_NOACTIVATE Or SWP_SHOWWINDOW
  97.  
  98.    Picture1.Move (Me.ScaleWidth / 2) - (Picture1.ScaleWidth / 2), (Me.ScaleHeight / 2) - (Picture1.ScaleHeight / 2)
  99.  
  100.    lCunter = 0
  101.    Timer1.Interval = 150
  102.  
  103.    DeleteDC TempDC
  104. End Sub
  105.  
  106. Private Sub Form_Unload(Cancel As Integer)
  107.    DeleteDC lHdc
  108.    DeleteObject hBitmap
  109. End Sub
  110.  
  111. Private Sub Timer1_Timer()
  112.    Dim Cnt As Long, lGray As Long
  113.    Dim lR As Long, lG As Long, lB As Long
  114.  
  115.    lCunter = lCunter + 1
  116.  
  117.    If lCunter > 60 < 65 Then
  118.        For Cnt = LBound(bBytes) To UBound(bBytes) - 3 Step 3
  119.            lB = bBytes(Cnt)
  120.            lG = bBytes(Cnt + 1)
  121.            lR = bBytes(Cnt + 2)
  122.            lGray = (222 * lR + 707 * lG + 71 * lB) / 1000
  123.            bBytes(Cnt) = (lB * 4 + lGray) / 5
  124.            bBytes(Cnt + 1) = (lG * 4 + lGray) / 5
  125.            bBytes(Cnt + 2) = (lR * 4 + lGray) / 5
  126.        Next Cnt
  127.  
  128.        SetDIBitsToDevice Me.hdc, 0, 0, bi24BitInfo.bmiHeader.biWidth, bi24BitInfo.bmiHeader.biHeight, 0, 0, 0, _
  129.            bi24BitInfo.bmiHeader.biHeight, bBytes(1), bi24BitInfo, DIB_RGB_COLORS
  130.  
  131.        Me.Refresh
  132.    End If
  133.  
  134.    If lCunter = 71 Then Timer1.Interval = 0
  135. End Sub
  136.  

Saludos.
En línea

LeandroA
Moderador
***
Desconectado Desconectado

Mensajes: 760


www.leandroascierto.com


Ver Perfil WWW
Re: Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #5 en: 14 Enero 2010, 04:05 am »

a una cosa muy importate Compilalo!! sino es muy lento.

Saludos.
En línea

agus0


Desconectado Desconectado

Mensajes: 360



Ver Perfil
Re: Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #6 en: 14 Enero 2010, 09:52 am »

Gracias Lea. Ya pude hacer el de vista pero el de xp me faltaba eso de hacer que se vea Blanco y negro o En escala de Grises Mejor Dicho Me Sirvio Perfecto
 ;-) ;-)
En línea

belent

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: [Solucionado] Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #7 en: 21 Julio 2010, 21:49 pm »

que tal yo queria hacer ese efecto del apagado del sistema, en blanco y negro xq vi en muchas pc con xp que tienen ese efecto. Yo tengo windows vista, quisiera saber si se puede hacer y cómo. Gracias!
En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: [Solucionado] Alguien sabe Como Crear ese Efecto Blanco Y negro ....
« Respuesta #8 en: 22 Julio 2010, 11:42 am »

O.o¡?
En línea

The Dark Shadow is my passion.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Crear Wiki package's alguien sabe algunos.?
Desarrollo Web
lilo. 4 3,483 Último mensaje 19 Diciembre 2010, 08:13 am
por lilo.
[SOLUCIONADO] Pantalla en negro, tanto con Ubuntu 10.10 como Kubuntu 10.04
GNU/Linux
ruben_new 1 5,326 Último mensaje 30 Enero 2011, 15:46 pm
por ruben_new
Alguien sabe como crear ventanas de texto en c++
Programación C/C++
gibranini 1 2,240 Último mensaje 24 Junio 2014, 09:30 am
por eferion
Alguien sabe como crear el equivalente de batch en linux?
Scripting
m5rk 3 3,408 Último mensaje 31 Marzo 2017, 02:16 am
por PasswordX
Alguien sabe como crear/editar un apk mod?
Juegos y Consolas
steleaaa 1 3,234 Último mensaje 26 Abril 2019, 20:48 pm
por Tachikomaia
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines