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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Pequeña duda!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pequeña duda!  (Leído 1,260 veces)
klaususkun

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Pequeña duda!
« en: 9 Enero 2008, 02:55 am »

Hola tengo una pequeña duda...
Se algo de visual basic lo mas basico... sin uso de ocx ni apis ...
he hecho tonterias con textbox comnandbutons imagenes etiquetas etc...

Y ahora viene mi duda tras estar trasteando asi en plan probando conocimiento basicos queria probar a hacer un programita enserio y me asalta una gran duda...

Seria posible crear un programa el cual no dispusiera de la barra tipica superiora donde esta el cerrar etc...? NO ME REFIERO A QUITAR EL MAXIMIZAR, MINIMIZAR, CERRAR.
Para que me entendais mejor imaginaros que quiero hacer un programa  el cual al abrirlo me dibuja un monigote en la pantalla (no dentro de un programa, sino por ejemplo encima de la barra de incio del windows)

No se si me he explicado muy bien ToT
Si siquen sin entenderme tratare de explicarselo graficamente poniendo ejemplos de programas ya existentes (pero que obiamente no estan hechos en Vbasic o eso creo..)


En línea

CesarTkgo69

Desconectado Desconectado

Mensajes: 19


Ver Perfil
Re: Pequeña duda!
« Respuesta #1 en: 9 Enero 2008, 03:45 am »

Creo que es esto lo que buscas  ;D
Suerte, Saludos

Código
  1. Const LWA_COLORKEY = &H1
  2. Const GWL_EXSTYLE = (-20)
  3. Const WS_EX_LAYERED = &H80000
  4.  
  5. Private Declare Function GetWindowLong Lib "User32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
  6. Private Declare Function SetWindowLong Lib "User32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  7. Private Declare Function SetLayeredWindowAttributes Lib "user32.dll" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
  8.  
  9. Private Sub Form_Load()
  10. Shape Me, &H0&  ' Al cargar el formulario, se quita el color indicado, en este caso el negro
  11. End Sub
  12.  
  13. Private Sub Shape(Frm As Form, Color As Long)
  14. Frm.BackColor = Color
  15. Dim Ret As Long
  16. Ret = GetWindowLong(Me.hWnd, GWL_EXSTYLE)
  17. Ret = Ret Or WS_EX_LAYERED
  18. SetWindowLong Me.hWnd, GWL_EXSTYLE, Ret
  19. SetLayeredWindowAttributes Me.hWnd, Color, 0, LWA_COLORKEY
  20. End Sub
  21.  

Chauuuuz


« Última modificación: 9 Enero 2008, 03:51 am por CesarTkgo69 » En línea

klaususkun

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Pequeña duda!
« Respuesta #2 en: 10 Enero 2008, 02:52 am »

Esta muy curioso ese script y se asemeja mucho pero no es 100% lo que quiero ya que el scrip que me has puestoal ejecutarlo me sale la ventana del formulario con sus bordes y la barra de arriva con el minimizar maximiza y cerrar pero lo k es dentro del formulario genial xk es transparente n_n

Si se puediera quitar el borde (y en ello incluyo la barra superiora donde esta el titulo y el ya repetido minimizar,maximizar y cerrar seria perfercto!!)

Ejemplo:

Perdon si la imagen es algo grande ^^UU

« Última modificación: 10 Enero 2008, 03:01 am por klaususkun » En línea

CesarTkgo69

Desconectado Desconectado

Mensajes: 19


Ver Perfil
Re: Pequeña duda!
« Respuesta #3 en: 10 Enero 2008, 05:18 am »

Pero viejito,
El form en estilo de borde tiene que estar en "none"
esto aparece justo arribita de donde le pones
el Caption al form ;D ojala lo veas
Para que quede mas claro
(y aprovechando el rato de ocio  :xD)



Y por si acaso, te posteo altiro la funcion para
mover el form ;)

Código
  1. Option Explicit
  2.  
  3. ' Libreria mover Formulario
  4. Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
  5. Private Declare Function ReleaseCapture Lib "User32" () As Long
  6.  
  7. ' Mover el Form
  8. Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  9.    ReleaseCapture
  10.    SendMessage Me.hWnd, &HA1, 2, 0&
  11. End Sub
  12.  

Saludos, Chauuuz
« Última modificación: 10 Enero 2008, 05:42 am por CesarTkgo69 » En línea

klaususkun

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Pequeña duda!
« Respuesta #4 en: 11 Enero 2008, 01:21 am »

Muchisimas Gracias tio!!
No me di cuenta de lo del border ^^UU

y gracias pos el ultimo codigo tb aunk no creo que use el de moverse ya que deseo que este fijo en un determinado sitio a si que me viene al pelo ^o^

Muchas gracias ^^
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines