Delphi - Espero que me entiendan

 
Vista:

Espero que me entiendan

Publicado por Luciano (2 intervenciones) el 03/04/2003 17:20:35
Hola amigos tengo una aplicacion que al ejecutarla abarca todo el escritorio incluido sea cubre todo.
mi programa esta funcionando en un local de ventas y como seguridad lo puse que inicie por shell. o sea se ejecuta unicamente mi programa.
al programa le puse botones con acceso directos a intenet. al correo y a otras aplicaciones.
pero cuando esto abren alguna ventana de internet. cubren todo el sistema. abarcando toda la pantalla.
yo quiero hacer que siempre quede visible la parte de abajo de mi sistema. como 3 centimetros. por que justo ahi tengo los botones para realizar ventas ect.. como logro quitar ese margen.?
o de ultima si puedo hacer un form que se posicione abajo como una barra de tareas y que cualquier otra ventana se acople arriba. si quitarle la vista.. gracias
como puedo hacer para dejar ese margen y que no me lo cubran otras aplicaciones
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Espero que me entiendan

Publicado por Domingo Seoane (65 intervenciones) el 04/04/2003 01:56:26
Haber si te puedo ayudar. Coloca este codigo en el evento OnCreate de un formulario, y este tomara la forma de una barra que se colocara en la parte inferior de la pantalla. Al modificar el area de trabajo especificamos cuales son las dimensiones que deben adoptar las demas ventanas al maximizarse y al poner el estilo en FsStayOnTop evitamos que la tapen otras ventanas. Con eso que tienes bastante para empezar, si tienes alguna otra duda me lo dices e intentamos solucionarla.

Saludos

----------------------------------------------------------------

procedure TForm1.FormCreate(Sender: TObject);
var
WORKAREA: TRect;
begin
height:= 50; // Altura de la barra
FormStyle:= FsStayOnTop;
BorderStyle:= Bsnone;
SystemParametersInfo(SPI_GETWORKAREA,0,@WORKAREA,0);
WORKAREA.Bottom:= WORKAREA.Bottom - height;
Top:= WORKAREA.Bottom;
Left:= WORKAREA.Left;
width:= WORKAREA.Right;
SystemParametersInfo(SPI_SETWORKAREA,0,@WORKAREA,SPIF_SENDCHANGE);
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Espero que me entiendan

Publicado por Luciano (2 intervenciones) el 04/04/2003 15:55:00
che cuando cierro el programa me queda el espacio limitado..y no se va.- o sea es como si quedara invisble el programa. y me sigue limitando el area..como hago para restaurarla de nuevo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Espero que me entiendan

Publicado por Domingo Seoane (65 intervenciones) el 05/04/2003 00:15:59
Eso es facil declara una variable local y guarda en ella el valor anterior del area y luego en el evento OnClose restaura ese valor. Nos quedaria un codigo mas o menos asi:

Saludos

------------------------------------------------------------------------------------------

var Vieja: TRect;

procedure TForm1.FormCreate(Sender: TObject);
var
WORKAREA: TRect;
begin
height:= 50; // Altura de la barra
FormStyle:= FsStayOnTop;
BorderStyle:= Bsnone;
SystemParametersInfo(SPI_GETWORKAREA,0,@WORKAREA,0);
Vieja:= WORKAREA;
WORKAREA.Bottom:= WORKAREA.Bottom - height;
Top:= WORKAREA.Bottom;
Left:= WORKAREA.Left;
width:= WORKAREA.Right;
SystemParametersInfo(SPI_SETWORKAREA,0,@WORKAREA,SPIF_SENDCHANGE);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
SystemParametersInfo(SPI_SETWORKAREA,0,@Vieja,SPIF_SENDCHANGE);
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Espero que me entiendan

Publicado por JR (17 intervenciones) el 06/04/2003 03:55:04
Hola, mi consulta es la siguiente, tengo problemas para definir las tablas para una aplicación similar a la tuya. He hurgado en la demo que viene en delphi (MassApp) y hay un form que es una orden de pedido. Quise implementar algo parecido pero no tan ambicioso. Logré el diseño: lista desplegable de clientes, de empleados, de formas de pago y un grid que me permite seleccionar producto(como el de el demo) El problema es que no consigo que mi aplicación guarde los datos seleccionados. Tengo tablas cliente, empleado, formaDePago, producto, factura, detalleDeFactura. El mensaje de error es "Cannot perform this operation on a close database"
Hay una manera más sencilla de lograr esto mismo sin tener que enredarme con el codesource de la demo MassApp

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar