2010-11-04 13 views
8

Parece que MFC tiene una gran falta de administradores de diseño/calibradores. Difícil de creer que cualquier biblioteca de UI que se precie carecería de calibradores, pero ahí está. He encontrado algo que se encargará del diseño habitual de la caja, pero lo que no he encontrado es un medidor que te ayude cuando necesites que las cosas se alineen tanto vertical como horizontalmente a medida que se expanden.Cuadrícula, cuadrícula flexible o diseño de grilla de cuadrícula para MFC

que tiene más información desde aquí:

layout manager for MFC dialog apps

He fregado la tela y cada búsqueda de MFC y rejilla/nada/acaba de enviarme a un montón de widgets de la red, no sizers. ¿Hay algo así en alguna parte?

+0

Difícil elegir entre dos respuestas que ambos dicen que no. Ambos son correctos. –

+0

Elegí el que lo dijo primero: p –

Respuesta

2

No he oído hablar de una biblioteca adecuada de caracterizadores para MFC. Y no creo que haya nada mucho mejor que las opciones mencionadas en esa pregunta vinculada.

En mi opinión , dudo que algo así se haga en este momento. Otros marcos de interfaz gráfica de usuario bien establecidos ya cuentan con funciones de medida adecuadas integradas de manera predeterminada y también compensan muchas otras deficiencias de MFC al mismo tiempo. Creo que mucha gente diría que simplemente no vale la pena desarrollar tal cosa para MFC ahora. (Incluso una vez empecé a trabajar en una especie de biblioteca de dimensionamiento genérico que podría haberse aplicado a MFC, pero con el tiempo perdido la ambición y la puse a un lado.)

Por otra parte, me siento como Microsoft mismos han dados de baja MFC como un legado , y en su lugar se movió para favorecer .NET/C#/WPF para el desarrollo de la GUI. Después de todo, observe qué tan lejos han progresado esas tecnologías más nuevas en los últimos 10 años, mientras que al mismo tiempo, MFC apenas ha cambiado más allá de la adición ocasional de un paquete de características.

Si es posible, le sugiero que considere la posibilidad de pasar a un marco C++ más moderno (como Qt) o .NET/C#/WPF (al menos para la parte de la GUI de las aplicaciones).

+0

Podría estar de acuerdo contigo en el cambio, pero ya estoy recomendando un cambio de un marco diferente (WX) porque nos encontramos con problemas causados ​​principalmente por la naturaleza multiplataforma de esa biblioteca . La biblioteca de acoplamiento en MFC también es mucho más agradable. Tengo que recomendar a los altos mandos, y tengo que hacerlo honestamente, y luego PUEDEN decidir. MFC se ve, en este momento, como la opción menos problemática y probablemente me voy a quedar atascado. Sin embargo, tengo un miembro de mi equipo que investiga esa opción. –

3

Me encontré con este "problema" hace un par de años usando WTL. Me cansé de manejadores WM_SIZE demasiado complicados, así que mordí la viñeta e implementé algunos contenedores de diseño, y adapté los controles Win32 y algunos de los míos propios a los contenedores de diseño.

Básicamente hice subclases para cada control e implementé mi propio protocolo para "MinSize, MaxSize, PreferredSize". Algunos controles son difíciles de implementar, pero nada es imposible. No fue tan difícil de hacer, por lo que es posible que desee reflexionar y hacerlo. MFC no es tan flexible como ATL/WTL con respecto a la creación de subclases, pero es lo suficientemente flexible.

Lamentablemente, no puedo compartir el código con usted. :/Incluso agregué un lenguaje de marcado XML simple en la parte superior, que era bastante agradable.

+0

¿Hay alguna posibilidad de que puedas compartir el código mientras tanto o al menos compartir tu enfoque? Podría ser útil antes de hacer algo por cuenta propia. –

Cuestiones relacionadas