2010-06-28 11 views
5

Estoy interesado en cómo Chrome pudo escribir una interfaz gráfica de usuario tan atractiva. ¿Qué bibliotecas y métodos usaron?¿Cómo creó Chrome una GUI diferente para el navegador?

Estoy particularmente sorprendido de que actúe al 100% como una GUI normal: puede arrastrarla por la franja azul y los botones normales [_, o, x] se hacen de forma diferente. También el arrastre de pestañas es tan fluido. De hecho, puede arrastrar una pestaña fuera de la GUI existente y creará una nueva ventana de forma fluida.

¿Alguien conoce más detalles al respecto?

Pregunto porque también quiero escribir una interfaz gráfica de usuario de gran apariencia para mis aplicaciones. Y este es un buen comienzo para comprender el proceso.

Gracias, Boda Cydo.

+0

posible duplicado de [¿Qué biblioteca de GUI usa Google Chrome?] (Http://stackoverflow.com/questions/874609/what-gui-library-does-google-chrome-use) – miku

+1

Lo que es aún más impresionante es que lograron implementarlo en múltiples sistemas operativos. –

+3

No sé si eso cuenta como una respuesta, por eso solo comento: Chromium es la parte de código abierto de Chrome. Tal vez encuentres lo que buscas en las fuentes. Por supuesto, esto podría tomar algo de tiempo, pero la respuesta final debería estar allí. – musiKk

Respuesta

6

Probablemente puramente API de Windows.

Hay funciones en Win32 para anular casi cualquier aspecto del comportamiento de Windows/y o mirar. Por ejemplo, puede interceptar el mensaje WM_NC_PAINT para pintar el "área no cliente" (barra de título y botones max/min). Puedes hacer esto en cualquier aplicación, de hecho.

+8

De hecho, Chrome usa [WTL] (http://www.hanselman.com/blog/TheWeeklySourceCode33MicrosoftOpenSourceInsideGoogleChrome.aspx). –

9

Aconsejaría contra teniendo este enfoque. Si bien Chrome tiene una GUI atractiva, romper las pautas de diseño para su plataforma de destino es raramente (pero a veces) la ruta para crear una interfaz de usuario atractiva, utilizable e intuitiva.

Si está buscando comprender el proceso para desarrollar una interfaz de usuario, le recomendaría que explore las pautas de diseño para su plataforma de destino (Windows, al parecer, en su caso).

+2

Esta es una buena e interesante respuesta. Estoy totalmente de acuerdo con pegar las pautas de diseño de la plataforma, pero eso plantea una cuestión de innovación. Obviamente no estamos atrapados con la interfaz de usuario de Windows 3.1, pero si abres Norton Antivirus, Google Chrome o cualquier aplicación de pantalla completa (o comparas XP con Vista con Win7/Gnome con KDE), verás una UI completamente diferente. Entonces, ¿dónde trazas la línea para quién libera UI innovadora y quién no? –

+4

@Jim: no tengo la intención de decir que nadie debería lanzar una IU que no sea estándar. Estoy diciendo que si alguien está intentando aprender a diseñar una IU, romper los estándares * desde el principio * probablemente sea una mala idea. ¡Ese es el tipo de cosa que crea las páginas de Geocities! Bromas aparte, esencialmente recomiendo caminar antes de correr; tome los estándares que están disponibles, úselos, luego descártelos una vez que sepa lo que está haciendo. –

+1

Nadie debería. Al final, casi cualquier interfaz de usuario que se ve y se siente diferente a la interfaz de usuario estándar es una pérdida general. Chrome no es mi navegador principal principalmente debido a los feos muebles de la ventana que no funcionan bien con el resto de mi escritorio, y eso a pesar de que la interfaz de usuario de Chrome no es realmente tan mala. – bobince

Cuestiones relacionadas