![]() |
evento WMWindowPosChanging en TForm
Holas. Necesito una ayuda. Estoy tratando de hacer un componente devirado de un TEdit, TKEdit, el cual, entre otras cosas, deberia habilitarme barras flotantes. Estuve viendo un ejemplo de nuestro amigo Neftali.
Form2 y Form3 son las barras flotantes y este ejemplo funciona a la perfeccion. ¿Como hago para asignarle desde el TKEdit los procedures WMWindowPosChanging, WMNCLButtonDown y FormResize al TForm que lo contiene? El TKEdit esta mas o menos asi. Gracias! |
No termino yo de comprender el asunto...
Digo yo que el TEdit estará en agún contenedor, es decir, dentro de un panel, de un form, etc. No creo que vayas a poner un TEdit que esté flotando él sólo, sin nada debajo ¿no?. Dicho de otra Forma: El TEdit (o TKEdit) no tiene por qué enterarse que se ha movido la ventana donde está, porque a él, ¿qué le importa eso? ;). Saludos |
Cita:
Paso a explicar lo que quiero hacer: El TKEdit tendra una conexion a una base de datos, y me traera registros de una tabla segun el codigo que se haya escrito. En las barras flotantes estaran los procedimiento que trabajaran sobre ese registro: alta, baja o modificacion. Segun el caso me habilitara o no los botones de las barras. Entonces, si que el TKEdit necesita saber si su form contenedor se movio o no. Espero se entienda y puedan ayudarme. Saludos. |
¡Hola!
No son propiamente eventos sino "métodos mensaje", y no pueden ser asignados "procedimentalmente" como suele hacerse con los manejadores de eventos, ya que no hay una propiedad evento donde puedan almacenarse dichas rutinas. Podrías usar herencia visual, colocando esos métodos mensaje en una plantilla base y de ella derivar todos los formularios que desees tengan ese comportamiento. Espero te sea de ayuda. Al González. :) |
Cita:
// Saludos |
Según he mirado con el Grep Search, el windowposchanging lo implementa la clase TCustomForm y TToolbar, el Tedit nop.
Mira, llevo con este mensaje dándole vueltas más de media hora, no entiendo lo que quieres hacer ni como funciona el tema. Desde mi punto de vista, el Form que contiene el TkEdit debería tener un evento llamado por ejemplo OnMoving y el tkEdit un procedimiento llamado DoOnParentMoving. Cuando Creas el Form, asignas el evento OnMoving y dentro podrás poner:
Tampoco entiendo el diseño, ¿Por qué un descendiente de TEdit puede crear dos barras flotantes? Lo normal sería que un Form tuviese dos propiedades : HasHorziontalBar:Boolean; HasVerticalBar:Boolean; Cuando se pone alguna en True, el propio Form crearía la barra adosada. Y esto lo digo porque: - ¿que ocurre si pones tu Tkedit sobre un panel del Form? las barras aparecerían ¡¡ sobre el panel !! - no piensas usar Frames ¿verdad? porque estarías en las mismas. Edito: En realidad llevo más de 40 minutos, porque Al no había contestado antes de empezar a escribir esto :D Saludos |
Cita:
Cita:
Cita:
Gracias a todos por su tiempo, segun vaya avanzando en el tema les comentare. Saludos.. |
La franja horaria es GMT +2. Ahora son las 09:35:41. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi