No permitir resize

Post Reply
jmartial
Posts: 457
Joined: Tue Mar 14, 2006 7:26 pm

No permitir resize

Post by jmartial »

Hola,


Me gustaría saber, si aunque el estilo de una ventana o diálogo sea THICKFRAME, es decir, permite cambiarle el tamaño con el ratón,
Habría alguna manera de no permitir que el usuario cambiara el tamaño.

Querría saberlo para diálogos y para ventanas.

Además, saber ssi alguien sabe como poner un borde como el thickframe, bonito y con sombra pero que nativamente no sea resizable?
Un Saludo,
Joaquín Martínez
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: No permitir resize

Post by karinha »

Mira se ayuda:

Code: Select all

DLG_CHEQUES DIALOG 37, 68, 530, 314
STYLE DS_ABSALIGN | DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "CHEQUES"
FONT 8, "MS Sans Serif"
{
 CONTROL "", 1013, "TWBrowse", WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP, 5, 6, 520, 120
 CONTROL " ", 101, "EDIT", ES_CENTER | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 139, 100, 12
 CONTROL " ", 102, "EDIT", ES_CENTER | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 153, 100, 12
 CONTROL " ", 103, "EDIT", ES_LEFT | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER, 205, 153, 314, 12
 CONTROL " ", 104, "EDIT", ES_CENTER | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 167, 100, 12
 CONTROL " ", 105, "EDIT", ES_CENTER | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 181, 60, 12
 CONTROL " ", 106, "EDIT", ES_LEFT | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER, 165, 181, 180, 12
 CONTROL " ", 107, "EDIT", ES_CENTER | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 195, 80, 12
 CONTROL " ", 108, "EDIT", ES_LEFT | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 103, 208, 70, 12
 CONTROL " ", 109, "EDIT", ES_LEFT | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 103, 222, 70, 12
 CONTROL " ", 110, "EDIT", ES_LEFT | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 235, 90, 12
 CONTROL " ", 111, "EDIT", ES_LEFT | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 103, 248, 70, 12
 CONTROL " ", 112, "EDIT", ES_LEFT | ES_MULTILINE | ES_WANTRETURN | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 103, 262, 325, 12
 PUSHBUTTON "&Novo", 1000, 11, 280, 70, 14
 PUSHBUTTON "&Alterar", 2000, 84, 280, 70, 14
 PUSHBUTTON "&Excluir", 3000, 157, 280, 70, 14
 PUSHBUTTON "&Pesquisa", 4000, 230, 280, 70, 14
 PUSHBUTTON "&Inicio", 5000, 303, 280, 70, 14
 PUSHBUTTON "&Anterior", 6000, 376, 280, 70, 14
 PUSHBUTTON "Se&guinte", 7000, 449, 280, 70, 14
 PUSHBUTTON "&Final", 8000, 11, 296, 70, 14
 PUSHBUTTON "&Listagem", 9000, 84, 296, 70, 14
 PUSHBUTTON "&Gravar", 10000, 157, 296, 70, 14
 PUSHBUTTON "&Cancelar", 11000, 230, 296, 70, 14
 PUSHBUTTON "&Quitar", 11500, 303, 296, 70, 14
 PUSHBUTTON "&Saida", 12000, 376, 296, 70, 14
 GROUPBOX "Cadastro de Cheques - Ocorrencias", 501, 5, 128, 520, 151
 LTEXT "N\xBA. Cheque:", 401, 10, 139, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Cód. Cliente:", 402, 10, 153, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Cpf/Rg/Cnpj:", 403, 10, 167, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Cód. Banco:", 404, 10, 181, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Valor Cheque:", 405, 10, 195, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Recebido em:", 406, 10, 208, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Bom Para:", 407, 10, 222, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Ocorrencia:", 408, 10, 235, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Quitado em:", 409, 10, 248, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Observação:", 410, 10, 262, 90, 12, WS_BORDER | WS_GROUP
 LTEXT "Cheques:", 420, 348, 168, 172, 34, NOT WS_GROUP
 CTEXT "", 421, 348, 202, 172, 33, SS_CENTER | NOT WS_GROUP
 CONTROL "", 801, "TDSay", 0 | WS_CHILD | WS_VISIBLE, 196, 235, 324, 12
 AUTORADIOBUTTON " &1 Por Cliente", 201, 187, 216, 72, 12
 AUTORADIOBUTTON " &2 Por Cheque", 202, 269, 216, 72, 12
 GROUPBOX "Escolha o Índice da Pesquisa", 113, 176, 206, 172, 27, BS_GROUPBOX
}
 
João Santos - São Paulo - Brasil
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: No permitir resize

Post by cnavarro »

jmartial wrote:Hola,


Me gustaría saber, si aunque el estilo de una ventana o diálogo sea THICKFRAME, es decir, permite cambiarle el tamaño con el ratón,
Habría alguna manera de no permitir que el usuario cambiara el tamaño.

Querría saberlo para diálogos y para ventanas.

Además, saber ssi alguien sabe como poner un borde como el thickframe, bonito y con sombra pero que nativamente no sea resizable?
Creo recordar que tienes la claúsula ON RESIZE, DATA bResized (no me acuerdo bien) y creo que existe aMaxMinInfo para delimitar el tamaño que puede tener una ventana
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: No permitir resize

Post by karinha »

Code: Select all

#include "Fivewin.ch"

FUNCTION MAIN()

    LOCAL oWnd

    DEFINE WINDOW oWnd

    ACTIVATE WINDOW oWnd;
             ON RESIZE SHOWRESIZETYPE( nSizeType )

    RETURN NIL


#define SIZE_INIT      NIL
#define SIZE_RESTORED  0
#define SIZE_MINIMIZED 1
#define SIZE_MAXIMIZED 2


STATIC FUNCTION SHOWRESIZETYPE( nSizeType )

    STATIC lInit := .T.

    DO CASE
        CASE nSizeType = SIZE_INIT
            ? "SIZE_INIT"
            lInit = .F.
        CASE nSizeType = SIZE_RESTORED .AND. !lInit
            ? "SIZE_RESTORED"
        CASE nSizeType = SIZE_MINIMIZED
            ? "SIZE_MINIMIZED"
        CASE nSizeType = SIZE_MAXIMIZED
            ? "SIZE_MAXIMIZED"
    ENDCASE

RETURN NIL
 
João Santos - São Paulo - Brasil
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: No permitir resize

Post by leandro »

Buenas noches,

Recurro de nuevo a ustedes, por que necesito dejar un tamaño fijo para una window, probé el código que publico nuestro amigo karinha, pero no funciona.

Cristóbal, los datas y los arrays que mencionas están dentro de la clase, podrías suministrarnos un ejemplo :oops: :D sobre su uso.

De antemano gracias.
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: No permitir resize

Post by cnavarro »

C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: No permitir resize

Post by nageswaragunupudi »

Code: Select all

#include "fivewin.ch"

function Main()

   local oWnd, w, h
   
   w     := 600
   h     := 500

   DEFINE WINDOW oWnd FROM 0,0 TO h,w PIXEL NOMAXIMIZE NOMINIMIZE
   oWnd:aMinMaxInfo := { nil, nil, nil, nil, w, h, w, h }
   ACTIVATE WINDOW oWnd CENTERED

return nil
 
Regards

G. N. Rao.
Hyderabad, India
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: No permitir resize

Post by leandro »

Excelente muchas gracias a los dos por la respuesta :D
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
Post Reply