Autor
|
Tema: ejecutar en pantalla completa (Leído 4,353 veces)
|
neo-tokyo
Desconectado
Mensajes: 46
|
me gustaria saber como podria con vb ejecutar una aplicación a pantalla completa, tal y como se ejecutan los juegos o ciertos programas y presentaciones
Gracias
|
|
|
En línea
|
|
|
|
Xerok1!
Desconectado
Mensajes: 228
|
si te refieres a esto: sino especifica un saludo
|
|
|
En línea
|
[Firma]Esperando haber si acaba el concurso de firmas y la pongo[/Firma]
|
|
|
neo-tokyo
Desconectado
Mensajes: 46
|
no maximizado no, que la ventana pierda los bordes (o que tenga que crear la pantalla sin bordes) y ocupe la pantalla, sin posibilidad de salir con el raton al escritorio hasta acabar la aplicación
|
|
|
En línea
|
|
|
|
Xerok1!
Desconectado
Mensajes: 228
|
ahhhhhh ok ok pues en las propiedaades del form pones borderstyle "none" y si kieres q no se poda salir este codigo: Option Explicit
Private Declare Function 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) As Long Const HWND_TOPMOST = -1 Const HWND_NOTOPMOST = -2 Const SWP_NOSIZE = &H1 Const SWP_NOMOVE = &H2 Const SWP_FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Const valorDock As String = "enPicDock" Private Declare Function SetParent Lib "User32" _ (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long Private Enum eShowWindow HIDE_eSW = 0& SHOWNORMAL_eSW = 1& NORMAL_eSW = 1& SHOWMINIMIZED_eSW = 2& SHOWMAXIMIZED_eSW = 3& MAXIMIZE_eSW = 3& SHOWNOACTIVATE_eSW = 4& SHOW_eSW = 5& MINIMIZE_eSW = 6& SHOWMINNOACTIVE_eSW = 7& SHOWNA_eSW = 8& RESTORE_eSW = 9& SHOWDEFAULT_eSW = 10& MAX_eSW = 10& End Enum
Private Declare Function ShowWindow Lib "User32" _ (ByVal hwnd As Long, ByVal nCmdShow As eShowWindow) As Long Private Declare Function MoveWindow Lib "User32" _ (ByVal hwnd As Long, ByVal X As Long, ByVal Y As Long, _ ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long Private Type POINTAPI X As Long Y As Long End Type Private Type RECTAPI Left As Long Top As Long Right As Long Bottom As Long End Type Private Type WINDOWPLACEMENT Length As Long Flags As Long ShowCmd As Long ptMinPosition As POINTAPI ptMaxPosition As POINTAPI rcNormalPosition As RECTAPI End Type Private Declare Function GetWindowPlacement Lib "User32" _ (ByVal hwnd As Long, ByRef lpwndpl As WINDOWPLACEMENT) As Long Private Sub MiFuncionDeAjuste(Formulario As Form, Estado As Boolean) Dim retorno As Long If Estado = True Then retorno = SetWindowPos(Formulario.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_FLAGS) Else retorno = SetWindowPos(Formulario.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_FLAGS) End If End Sub
Private Sub dockForm(ByVal formhWnd As Long, _ ByVal picDock As PictureBox, _ Optional ByVal ajustar As Boolean = True) Call SetParent(formhWnd, picDock.hwnd) posDockForm formhWnd, picDock, ajustar Call ShowWindow(formhWnd, NORMAL_eSW) End Sub
Private Sub posDockForm(ByVal formhWnd As Long, _ ByVal picDock As PictureBox, _ Optional ByVal ajustar As Boolean = True) Dim nWidth As Long, nHeight As Long Dim wndPl As WINDOWPLACEMENT ' If ajustar Then nWidth = picDock.ScaleWidth \ Screen.TwipsPerPixelX nHeight = picDock.ScaleHeight \ Screen.TwipsPerPixelY Else Call GetWindowPlacement(formhWnd, wndPl) With wndPl.rcNormalPosition nWidth = .Right - .Left nHeight = .Bottom - .Top End With End If Call MoveWindow(formhWnd, 0, 0, nWidth, nHeight, True) End Sub
Private Sub Form_Load()
End Sub
Private Sub Timer2_Timer() MiFuncionDeAjuste Me, True End Sub
y listo,asi no se puede salir asta que alguna orden q le des se produzca(unload por ejemplo) creo q esto ya si es lo que kieres un saludo
|
|
|
En línea
|
[Firma]Esperando haber si acaba el concurso de firmas y la pongo[/Firma]
|
|
|
Freeze.
|
Hay por favor para eso haz esto: Me.windowstate = 2 Me.BorderStyle = 0
|
|
|
En línea
|
|
|
|
neo-tokyo
Desconectado
Mensajes: 46
|
pero la cosa es que queria adaptar la pantalla a la ventana, si es 800x600 da igual la resolucion da pantalla que se podra a 800x600
he visto la funcion que quiero en openGL y hace exactamente lo que quiero pero nose como ejecutar openGL con vb, he buscao por ahí y creo que se puede hacer pero no he encontrao como utilizar openGL desde vb, la cosa es que pensaba que se podria hacer facilmente desde vb ya que es algo parecido a cuando ejecutas msdos a pantalla completa o cualquier juego tambien lo hace
Saludos
|
|
« Última modificación: 27 Septiembre 2007, 22:52 pm por neo-tokyo »
|
En línea
|
|
|
|
Ferсhu
Desconectado
Mensajes: 1.215
Menos palabras y Mas codigos.
|
No se puede hacer el tipico Full screen de los jueguitos. Lo unico q podes hacer es q la ventana de tu aplicacion ocupe toda la pantalla, y determinar primero la resolucion de la pantalla, luego asignarle el tamaño y lo q te dijeron los demas.
Si keres usar OpenGL, Usa c++.
|
|
« Última modificación: 27 Septiembre 2007, 22:59 pm por <~>FeRcHu<~> »
|
En línea
|
|
|
|
neo-tokyo
Desconectado
Mensajes: 46
|
OK, pues gracias por vuestras respuestas Solo querria openGL para esa función así que preferiré optar por vb y que mi aplicación no tenga la presentacioón que yo queria
Un saludo
|
|
|
En línea
|
|
|
|
|
neo-tokyo
Desconectado
Mensajes: 46
|
pues eso seria interesante, e incluso en la aplicación en sí podria utilizar otras funciones de openGL ya que esta solo he empezado a crearlo Si recuerdas los nombres o algun sitio por donde podria buscar
|
|
|
En línea
|
|
|
|
|
|