Combobox de solo lectura

22/06/2006 - 13:20 por Juan Diego Bueno | Informe spam
Hola grupo:

Sabeis de alguna forma de deshabilitar un combobox sin usar enabled?.
El objetivo es que no se pueda desplegar, ni por supuesto, escribir
sobre él, pero que le pueda dar el ForeColor que quiera. El tono gris
de enabled dificulta su visibilidad.

Gracias

Preguntas similare

Leer las respuestas

#1 Daniel A. Calvin
22/06/2006 - 21:17 | Informe spam
Hola Juan

Una forma que puedes hacerlo es mediante enabled=false, pero, sobre
escribiendo el metodo paint y hacer tu propia implementación.

Yo lo haría heredando del control y capturando el onpaint, pero preguntando
si el control esta enabled=false, si no es asi dejo que invoque al paint real.

De todas formas creo que te puede llegar a resultar bastante laborioso.

La otra es tambien heredando e interceptando los mensajes de windows, pero
no es muy recomendable.



Daniel A. Calvin
MCP


"Juan Diego Bueno" escribió:

Hola grupo:

Sabeis de alguna forma de deshabilitar un combobox sin usar enabled?.
El objetivo es que no se pueda desplegar, ni por supuesto, escribir
sobre él, pero que le pueda dar el ForeColor que quiera. El tono gris
de enabled dificulta su visibilidad.

Gracias


Respuesta Responder a este mensaje
#2 Juan Diego Bueno
24/06/2006 - 18:23 | Informe spam
Hola Daniel:

En este mismo grupo he visto como hay gente que usa la segunda opción, es
decir, la de interceptar los mensajes de Win
¿Por qué es poco recomendable?. Es una aplicación Win32 que no va a ser
portada a ningún otro entorno


"Daniel A. Calvin" escribió en el
mensaje news:
Hola Juan

Una forma que puedes hacerlo es mediante enabled=false, pero, sobre
escribiendo el metodo paint y hacer tu propia implementación.

Yo lo haría heredando del control y capturando el onpaint, pero
preguntando
si el control esta enabled=false, si no es asi dejo que invoque al paint
real.

De todas formas creo que te puede llegar a resultar bastante laborioso.

La otra es tambien heredando e interceptando los mensajes de windows, pero
no es muy recomendable.



Daniel A. Calvin
MCP


"Juan Diego Bueno" escribió:

Hola grupo:

Sabeis de alguna forma de deshabilitar un combobox sin usar enabled?.
El objetivo es que no se pueda desplegar, ni por supuesto, escribir
sobre él, pero que le pueda dar el ForeColor que quiera. El tono gris
de enabled dificulta su visibilidad.

Gracias


Respuesta Responder a este mensaje
#3 Daniel A. Calvin
25/06/2006 - 18:11 | Informe spam
Hola Juan

Hacer un override de un metodo OnXXXX te permite seguir manteniendo un alto
nivel de abstracción, manejas la cosa de manera mas narural.

Solo se trata de eso, nada mas.

De todas formas hay mensajes que debes atrapar por tu cuenta debido a que no
hay ningún OnXXXX o evento que atienda ese mensaje, entonces no te queda mas
remedio que trapear y/o enviar mensajes específicos.

Hetenido y normalmene uso ambas técnicas, pero con cieto orden de prioridad,
si hay un OnXXXX lo utilizo, si no existe un OnXXXX que me sirva trapeo
mensajes y hago sub classing al viejo estilo.

La primera es mucho mas prolija, simple y fácil de mantener que la primera.

Saludos

Daniel Calvin
MCP


"Juan Diego Bueno" escribió en el mensaje
news:%
Hola Daniel:

En este mismo grupo he visto como hay gente que usa la segunda opción, es
decir, la de interceptar los mensajes de Win
¿Por qué es poco recomendable?. Es una aplicación Win32 que no va a ser
portada a ningún otro entorno


"Daniel A. Calvin" escribió en
el mensaje news:
Hola Juan

Una forma que puedes hacerlo es mediante enabled=false, pero, sobre
escribiendo el metodo paint y hacer tu propia implementación.

Yo lo haría heredando del control y capturando el onpaint, pero
preguntando
si el control esta enabled=false, si no es asi dejo que invoque al paint
real.

De todas formas creo que te puede llegar a resultar bastante laborioso.

La otra es tambien heredando e interceptando los mensajes de windows,
pero
no es muy recomendable.



Daniel A. Calvin
MCP


"Juan Diego Bueno" escribió:

Hola grupo:

Sabeis de alguna forma de deshabilitar un combobox sin usar enabled?.
El objetivo es que no se pueda desplegar, ni por supuesto, escribir
sobre él, pero que le pueda dar el ForeColor que quiera. El tono gris
de enabled dificulta su visibilidad.

Gracias








email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida