CSPromex
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.


Programadores dedicados a C sharp .Net, eres nuevo, experto o quieres aprender a programar en C Sharp, aquí encontraras todo lo que necesitas.
 
ÍndiceBuscarÚltimas imágenesChatRegistrarseConectarse
Conectarse
Nombre de Usuario:
Contraseña:
Entrar automáticamente en cada visita: 
:: Recuperar mi contraseña
Últimos temas
» Sockets Conexion,Envio y recepcion de datos (mini-chat Cliente-Servidor)
Redimensionar controles en tiempo de ejecución. I_icon_minitimeSáb Sep 30, 2023 6:24 pm por EurekaMartin

» Graficos: Grafica circular
Redimensionar controles en tiempo de ejecución. I_icon_minitimeMar Mar 05, 2019 4:58 pm por Luis Garcia

» Calendario hecho Manualmente
Redimensionar controles en tiempo de ejecución. I_icon_minitimeMar Mar 05, 2019 3:52 pm por Luis Garcia

» Activar el protector de pantalla.
Redimensionar controles en tiempo de ejecución. I_icon_minitimeMar Mar 05, 2019 3:12 pm por Luis Garcia

» Hacer backup de MySql desde C#
Redimensionar controles en tiempo de ejecución. I_icon_minitimeMar Abr 18, 2017 10:04 pm por maurifl

» Sockets programa para Ciber Cafe (Cliente-Servidor)
Redimensionar controles en tiempo de ejecución. I_icon_minitimeLun Ago 10, 2015 5:45 pm por artes

» Ayuda crear emoticones en un chat
Redimensionar controles en tiempo de ejecución. I_icon_minitimeDom Jul 12, 2015 9:00 pm por yeco96

» Necesito ayuda para pasar datos a un Datagridview
Redimensionar controles en tiempo de ejecución. I_icon_minitimeDom Jun 07, 2015 4:33 pm por rafaelfa

» Reproductor de música->Lista de reproducción (Guardar-Cargar)
Redimensionar controles en tiempo de ejecución. I_icon_minitimeLun Jun 01, 2015 3:00 pm por kevin22

Buscar
 
 

Resultados por:
 
Rechercher Búsqueda avanzada
Síguenos:
Crear foro Crear foro Crear foro

 

 Redimensionar controles en tiempo de ejecución.

Ir abajo 
AutorMensaje
Guillermo Javier Salazar
STAFF TEAM
STAFF TEAM
Guillermo Javier Salazar


Mensajes : 181
Puntos : 349
Localización : México
Comentarios : El azar favorece a una mente preparada.

Redimensionar controles en tiempo de ejecución. Empty
MensajeTema: Redimensionar controles en tiempo de ejecución.   Redimensionar controles en tiempo de ejecución. I_icon_minitimeVie Mar 11, 2011 8:16 pm

Redimensionar controles en tiempo de ejecución.

Les traigo este código para cambiar el tamaño de un control en tiempo de ejecución desde sus bordes, primero la librería:

using System.Runtime.InteropServices;

Ahora declaramos las APIs y sus constantes:

-------------------------------------------------------
[DllImport("user32.DLL", EntryPoint = "GetWindowLong")]
static extern int GetWindowLong(
int hWnd,
int nIndex);
[DllImport("user32.DLL", EntryPoint = "SetWindowLong")]
static extern int SetWindowLong(
int hWnd,
int nIndex,
int dwNewLong);
[DllImport("user32.DLL", EntryPoint = "SetWindowPos")]
static extern bool SetWindowPos(
int hWnd,
int hWndInsertAfter,
int X,
int Y,
int cx,
int cy,
uint uFlags);

const int GWL_STYLE = (-16);
const int WS_THICKFRAME = 0x40000;
const int SWP_DRAWFRAME = 0x20;
const int SWP_NOMOVE = 0x2;
const int SWP_NOSIZE = 0x1;
const int SWP_NOZORDER = 0x4;
-------------------------------------------------------

Ahora dentro del evento MouseDown de algún control ponemos el siguiente código:

-------------------------------------------------------
Código:
if (e.Button == MouseButtons.Right)
            {
                Control control = (Control)sender;
                try
                {
                    int Style = GetWindowLong(control.Handle.ToInt32(), GWL_STYLE);
                    if ((Style & WS_THICKFRAME) == WS_THICKFRAME)
                    {
                        Style = Style ^ WS_THICKFRAME;
                    }
                    else
                    {
                        Style = Style | WS_THICKFRAME;
                    }
                    SetWindowLong(control.Handle.ToInt32(), GWL_STYLE, Style);
                    SetWindowPos(control.Handle.ToInt32(), this.Handle.ToInt32(), 0, 0, 0, 0, SWP_NOZORDER | SWP_NOSIZE | SWP_NOMOVE | SWP_DRAWFRAME);
                }
                catch { }
            }
-------------------------------------------------------

Listo, ahora solo le damos click derecho y podemos redimensionarlo. saludos a todos!
Volver arriba Ir abajo
https://cspromex.activo.mx
 
Redimensionar controles en tiempo de ejecución.
Volver arriba 
Página 1 de 1.
 Temas similares
-
» Redimensionar una imagen.
» Crear controles en tiempo de ejecución, identificarlos, manipularlos y ligarlo a eventos.
» Referenciar a una DLL en tiempo de ejecución.
» Crear N cantidad de textbox en ejecucion y sumarlos
» Asignar lista de valores a un ComboBox en tiempo de ejecucion

Permisos de este foro:No puedes responder a temas en este foro.
CSPromex :: PROGRAMACIÓN EN C# :: Código abierto-
Cambiar a: