Catálogo de Trabajos de Programación Windows
Parte I Conocimientos básicos
Capítulo 1 Primeros pasos
1.1 Entorno Windows
1.1.1 Una breve historia de Windows
1.1.2 Todos los aspectos de Windows
1.1.3 Enlaces dinámicos
1.2 Opciones de programación de Windows
1.2.1 API y modo de administración de memoria
1.2.2 Selección de idioma
1.2.3 Entorno de programación
1.2.4 Documentación API
1.3 Tu primer programa para Windows
p>1.3.1 Modo de caracteres
1.3.2 Programa correspondiente de Windows
1.3.3 Archivo de encabezado
1.3.4 Entrada de programa p >
1.3.5 Función MessageBox
1.3.6 Compilación, vinculación y ejecución
Capítulo 2 Introducción a Unicode
2.1 Breve historia de los conjuntos de caracteres
p>2.1.1 Estándar de Estados Unidos
2.1.2 Mundo fuera de Estados Unidos
2.1.3 ASCII extendido
2.1 .4 Conjunto de caracteres de doble byte
2.1.5 Solución Unicode
2.2 Caracteres anchos y lenguaje c
2.2.1 tipo de datos de caracteres
2.2. 2 Caracteres más anchos
2.2.3 Funciones de la biblioteca de caracteres anchos
2.2.4 Mantenimiento de un archivo de código fuente
2.3 Caracteres anchos y Windows p>
2.3.1 Tipos de archivos de encabezado de Windows
2.3.2 Llamadas a funciones de Windows
2.3.3 Funciones de cadena de Windows
2.3.4 En Usando printf en Windows
2.3.5 Cuadro de mensaje formateado
2.3.6 Internacionalización en este libro
Capítulo 3 Ventana y mensaje
p>3.1 Creación de ventanas
3.1.1 Descripción general de la estructura del sistema
3.1.2 Programa HELLOWIN
3.1.3 Considerándolo todo
3.1.4 Registro de clase de ventana
3.1.5 Creación de ventana
3.1.6 Visualización de ventana
3.1.7 Bucle de mensajes
p>3.1.8 Procedimiento de ventana
3.1.9 Procesamiento de mensajes
3.1.10 Reproducción de archivos de sonido
3.1.11 Mensaje WM_PAINT
p>3.1.12 Mensaje WM_DESTROY
3.2 Algunas dificultades en la programación de Windows
3.2.1 Quién llama a quién
3.2.2 Mensajes en cola y no -cola de mensajes
3.2.3 Solución rápida
Capítulo 4 Salida de texto
4.1 Dibujar y volver a dibujar
4.1.1 Mensaje WM_PAINT
4.1.2 Rectángulo válido y rectángulo no válido
4.2 Introducción a GDI
4.2.1 Entorno del dispositivo
4.2 .2 Obtener el dispositivo identificador de entorno: Método 1
4.2.3 Dibujar la estructura de información
4.2.4 Obtener el identificador de entorno del dispositivo: Método 2
4.2.5 TEXTOUT Explicación detallada de funciones
4.2.6 Fuente del sistema
4.2.7 Tamaño de caracteres
4.2.8 Medición del tamaño del texto
4.2.9 Formato de texto
4.2.10 Uso integral
4.2.11 Procedimiento de ventana SYSMETSl.C
4.2.12 Espacio insuficiente
4.2.13 Tamaño del área de clientes
4.
3 Barra de desplazamiento
4.3.1 El rango y la posición de la barra de desplazamiento
4.3.2 Mensaje de la barra de desplazamiento
4.3.3 Agregar el SYSMET del desplazamiento bar
4.3.4 La estructura del código de dibujo del programa
4.4 Mejor desplazamiento
4.4.1 Función de información de la barra de desplazamiento
4.4.2 ¿Hasta dónde puedo desplazarme?
4.4.3 Nuevos SYSMETS
4.4.4 Pero no quiero usar el mouse
Capítulo 5 Conceptos básicos de dibujo
p>
5.1 Estructura de GDI
5.1.1 Principio de GDI
5.1.2 Llamada a función GDI
5.1.3 Gráficos básicos de GDI
p>
5.1.4 Otros
5.2 Entorno del dispositivo
5.2.1 Obtener el identificador del entorno del dispositivo
5.2.2 Obtener información del entorno del dispositivo
p>
5.2.3 Programa DEVCAPSl
5.2.4 Tamaño del dispositivo
5.2 .5 Color ABC
5.2.6 Atributos del entorno del dispositivo
p>
5.2.7 Guardar el entorno del dispositivo
5.3 Dibujar puntos y líneas p>
5.3.1 Configuración de píxeles
5.3.2 Líneas rectas
p>
5.3.3 Función de dibujo de bordes
5.3.4 Spline Bezier
5.3.5 Usar pincel existente
5.3.6 Crear, seleccionar y eliminar pinceles
5.3.7 Rellenar huecos
5.3.8 Modo de dibujo
5.4 Dibujar áreas rellenas
5.4 .1 Función de polígono y modo de relleno de polígono
5.4.2 Rellenar el interior con un pincel p>
5.5 Modo de mapeo GDI
5.5.1 Coordenadas del dispositivo y coordenadas lógicas
5.5.2 Sistema de coordenadas del dispositivo
5.5.3 Ventana gráfica y ventana
5.5.4 Uso de MMTEXT
5.5.5 Modos de mapeo métrico
5.5.6 Modos de mapeo personalizados
5.5.7 Programa WHATSIZE
5.6 Rectángulo, área y recorte
5.6.1 Procesamiento de rectángulos
5.6.2 Rectángulos aleatorios
5.6.3 Creación y dibujo regiones
5.6.4 Recorte de rectángulos y regiones
5.6.5 Programa CLOVER
Capítulo 6 Teclado
6.1 Conceptos básicos del teclado p>
6.1.1 Ignorar el teclado
6.1.2 ¿Quién se centró?
6.1.3 Colas y sincronización
6.1.4 Pulsaciones de teclas y caracteres
6.2 Mensajes de pulsaciones de teclas
6.2 .1 Pulsaciones de teclas del sistema y pulsaciones de teclas no del sistema
6.2.2 Códigos de teclas virtuales
6.2.3 1información de parámetros
6.2.4 Estado de escape
p>
6.2.5 Usar mensajes de pulsación de teclas
6.2.6 Agregar funciones de procesamiento de teclado a SYSMETS p>
6.3 Mensajes de caracteres
6.3.1 Mensajes de cuatro caracteres
6.3.2 Clasificación de mensajes
6.3.3 Control del procesamiento de caracteres p>
6.3.4 Mensajes de caracteres muertos
6.4 Mensajes de teclado y juegos de caracteres
6.4.1 Programa KEYVIEW1
6.4.2 Teclado no inglés problemas
6.4.3 Juegos de caracteres y fuentes
6.4.4 Soluciones Unicode
6.4.5 Fuentes TrueType y fuentes grandes
6.5 Caret (no el cursor)
6.5.1 Algo sobre insertar funciones simbólicas
6.5.2 Programa TYPER
Capítulo 7 Ratón
7.1 Conocimientos básicos del ratón
7.1.1 Algunos términos básicos
7.1.2 ¿Cuál es la forma plural de ratón?
7.2 Mensajes del mouse en el área del cliente
7.2.1 Ejemplo simple de procesamiento del mouse
7.2.2 Procesamiento de la tecla Shift
7.2.3 Doble clic con el mouse
p>7.3 Mensaje del mouse del área no cliente
7.3.1 Mensaje de prueba de impacto
7.3.2 Mensaje de activación de mensaje
7.4 Haga clic en el programa a mitad de la prueba
7.4.1 Un ejemplo hipotético
7.4.2 Un programa simple
7.4.3 Utilice el teclado para imitar las operaciones del mouse
7.4.4 Agregar interfaz de teclado en CHECKER
7.4.5 Usar subventana en prueba de impacto
7.4.6 Subventana en programa CHECKER p>
7.4.7 Subventanas y teclado
7.5 Capturando el mouse
7.5.1 Diseñando un rectángulo
7.5.2 Solución de captura
7.5.3 Programa BLOKOUT2
7.6 Rueda del ratón
Capítulo 8 Temporizador
8.1 Conocimientos básicos del temporizador
8.1.1 Sistema y temporizadores
8.1.2 Los mensajes del temporizador no son asincrónicos
8.2 Tres formas de utilizar los temporizadores
8.2.1 Método uno
8.2.2 Método dos
8.2.3 Método tres
8.3 Usar un cronómetro como reloj
8.3.1 Reloj digital
8.3.2 Obtener la hora actual
8.3.3 Mostrar números y dos puntos
8.3.4 Considerar la internacionalización
8.3.5 Reloj analógico p>
8.4 Uso de temporizadores en informes de estado
Capítulo 9 Control de ventana secundaria
9.1 Clase de botón
9.1.1 Creación de ventana secundaria
9.1.2 La ventana secundaria pasa información a la ventana principal
9.1.3 La ventana principal pasa información a la ventana secundaria
9.1.4 Botón
9.1. 5 Casilla de verificación
9.1.6 Botón de opción
9.1.7 Cuadro combinado
9.1.8 Cambiar texto del botón
p>9.1. 9 Botones visibles y botones habilitados
9.1.10 Botones y foco de entrada
9.2 Controles y colores
9.2.1 Color del sistema
9.2.2 Color del botón
9.2.3 Mensaje WMCTLCOLORBTN
9.2.4 Botón autodibujado
9.3 Clase estática
9.4 Desplazamiento clase de barra
9.4.1 Programa COLORS1
9.4.2 Interfaz de teclado automático
9.4.3 Subclase de ventana
9.4.4 Fondo colorear
9.4.5 Colorear barras de desplazamiento y texto estático
9.5 Clase de edición
9.5.1 Clase de edición Estilo
9.5.2 Mensaje de notificación del control de edición
9.5.3 Uso del control de edición
9.5.4 Mensaje pasado al control de edición
9.6 Clase de cuadro de lista
9.6.1 Estilo del cuadro de lista
9.6.2 Agregar cadenas al cuadro de lista
9.6.3 Selección y extracción de elementos
9.6.4 Recibir mensajes de el cuadro de lista
9.6.5 Programa de cuadro de lista simple
9.6.6 Listado de archivos
9.6.7 Programa HEAD de Windows
Capítulo 10 Menú y otros recursos
10.1 Iconos, punteros del ratón
Agujas, hilos y recursos personalizados
10.1.1 Añadiendo iconos al programa
10.1.2 Obteniendo el identificador del icono
10.1.3 En la aplicación Usar iconos
10.1.4 Usar punteros de mouse personalizados
10.1.5 Recursos de cadena
10.1.6 Recursos personalizados
10.2 Menú
10.2.1 Conceptos relacionados con el menú
10.2.2 Estructura del menú
10.2.3 Definición del menú
10.2 Menús de referencia en. programas
10.2.5 Menús y mensajes
10.2.6 Programas de muestra
10.2.7 Especificaciones en el diseño de menús
10.2.8 Manera engorrosa de definir menús
10.2.9 Menú emergente flotante
10.2.1 0Usar menú del sistema
10.2.1 1Cambiar menú
10.2.1 2 Otros comandos del menú
10.2.1 3 Usos alternativos del menú
10.3 Aceleradores de teclado
10.3 Por qué deberías usar el teclado. aceleradores
10.3.2 Algunas reglas para especificar teclas de acelerador
10.3.3 Tabla de aceleradores
10.3.4 Cargar tabla de teclas de acelerador
10.3.5 Teclas de traducción
10.3.6 Recibir mensajes de la tecla aceleradora
10.3.7 Programa POPPAD con menú y teclas aceleradoras
10.3.8 Habilitar elementos del menú
10.3.9 Elementos del menú Procesar
Cuadro de diálogo Capítulo 11
11.1 Cuadro de diálogo modal
11.1.1 Crear un cuadro de diálogo Acerca de
11.1.2 Cuadro de diálogo y su plantilla
11.1.3 Proceso del cuadro de diálogo
11.1.4 Cuadros de diálogo de activación
11.1.5 Cambio de tema
11.1.6 Cuadros de diálogo más complejos
11.1.7 Aplicación de controles de cuadros de diálogo
11.1.8 Botones Aceptar y Cancelar
11.1.9 Evitar variables globales
11.1.1 0Pestaña acoplable y grupo de opciones
11.1.1 1 En el cuadro de diálogo Dibujo
11.1.1 2 Otro funciones sobre cuadros de diálogo.
11.1.1 3 Definir los controles propios del programa
11.2 Cuadro de diálogo no modal
11.2.1 La diferencia entre modal y no -cuadros de diálogo modales
11.2.2 El nuevo programa COLORES
11.2.3 HEXCALC: ¿ventana o cuadro de diálogo
11.3 Cuadro de diálogo común
11.3.1 Mejorar POPPAD
11.3.2 Operaciones de lectura/escritura de archivos Unicode
11.3.3 Cambiar fuente
11.3.4 Buscar y reemplazar
11.3.5 Programa de Windows que llama solo a una función
Capítulo 12 Portapapeles
12.1 Uso sencillo del portapapeles
12.1.1 Formato de datos estándar del portapapeles
12.1.2 Asignación de memoria
12.1.3 Transferir texto al portapapeles
12.1.4 Obtener texto del portapapeles
12.1.5 Abrir y cerrar el portapapeles
12.1.6 Portapapeles y Unicode
12.2 Uso complejo del portapapeles
12.2.1 Utilizar múltiples elementos de datos
12.2.2 Generación retrasada
12.2.3 Formato de datos privados
p>12.3 Implementación del Visor del Portapapeles
12.3.1 Visor del Portapapeles Cadena
12.3.2 Funciones y mensajes del visor del portapapeles<
/p>
12.3.3 Un visor de portapapeles sencillo
Parte II: aspectos relacionados con las imágenes
Capítulo 13 Uso de impresoras
13.1 Conceptos básicos de impresión
13.1.1 Impresión y procesamiento en segundo plano
13.1.2 Entorno del dispositivo de impresora
13.1.3 Programa DEVCAPS modificado
13.1.4 Llamada PrinterProperties
13.1.5 Comprobar la capacidad de BitBlt
13.1.6 El programa de impresión más sencillo
13.2 Imprimir gráficos y texto
p>13.2.1 El proceso básico de impresión
13.2.2 Usar el proceso de cancelación para cancelar la impresión
13.2.3 Cómo usar AbortProc en Windows
13.2 .4 Implementar el cancelar proceso
13.2.5 Agregar un cuadro de diálogo de impresión
13.2.6 Agregar una función de impresión a POPPAD
Capítulo 14 Mapa de bits y Bitblt
p >14.1 Conceptos básicos del mapa de bits
14.1.1 Origen del mapa de bits
14.2 Tamaño del mapa de bits
14.2.1 Color y mapa de bits
p>14.2.2 Dispositivos del mundo real
14.2.3 Mapas de bits compatibles con GDI
14.3 Transferencias de bloques de bits
14.3.1 BitBlt simple
14.3.2 Estirar mapa de bits
14.3.3 Modo StretchBlt
14.3.4 Operación ráster
14.3.5 Patrón Blt
14.4 Objeto de mapa de bits GDI
14.4.1 Creación de DDB
14.4.2 Bits de mapa de bits
14.4.3 Entorno del dispositivo de memoria
14.4.4 Cargando recursos de mapa de bits
14.4.5 Formato de mapa de bits monocromático
14.4.6 Uso de mapas de bits como pinceles
14.4.7 Dibujado de mapas de bits
14.4 .8 Mapas de bits de sombra
14.4.9 Uso de mapas de bits en menús
14.4.10 Imágenes de mapas de bits no rectangulares
14.4.11 Animación simple
14.4.12 Mapa de bits fuera de la ventana
Capítulo 15 Mapa de bits independiente del dispositivo
15.1 Formato de archivo DIB
15.1.1 DIB estilo OS/2 p>
15.1.2 Ascendente
15.1.3 Elementos del diagrama DIB
15.1.4 DIB de Windows extendido
15.1.5 Verificación de la realidad
15.1.6 Compresión DIB
15.2 Enmascaramiento de color (COLOR MASKING)
15.2.1 Encabezado de la versión 4
15.2.2 Encabezado de la versión 5
15.2.3 Mostrar información DIB
15.3 Visualizar e imprimir
15.3.1 Entender DIB
15.3.2 Punto Visualización de píxeles de punto a punto
15.3.3 Mundo de inversión DIB
15.3.4 Visualización secuencial
15.3.5 Escalado al tamaño apropiado
15.3.6 Conversión de color, paleta de colores y rendimiento de visualización
15.4 Combinación de DIB y DDB
15.4.1 Creación de DDB a partir de DIB
15.4.2 De DDB a DIB
15.4.3 Bloque DIB
15.4.4 Otras diferencias entre bloques DIB
15.4.5 Opciones de asignación de archivos
15.4.6 Resumen
Capítulo 16 Administrador de paletas
16.1 Uso de la paleta de colores<
/p>
16.1.1 Hardware de vídeo
16.1.2 Mostrar escala de grises
16.1.3 Información de la paleta de colores
16.1.4 Ajuste de la paleta de colores método de índice
16.1.5 Compatibilidad con la paleta de consultas
16.1.6 Paleta del sistema
16.1.7 Otras funciones de la paleta
16.1.8 Problemas de operación de mapeo de bits
16.1.9 Visualización de la paleta de colores del sistema
16.2 Animación de la paleta de colores
16.2 1 bola que rebota
16.2. .2 Animación de paleta de colores para un proyecto
16.2.3 Aplicaciones de ingeniería
16.3 Paletas de colores e imágenes del mundo real
16.3 Paleta de colores y DIB empaquetado<. /p>
16.3.2 Paleta de colores "Universal"
16.3.3 Paleta de colores de medios tonos
16.3.4 Colores de la paleta de índice
16.3.5 Paleta de colores y objetos de mapa de bits
16.3.6 Paleta de colores y bloques DIB
16.4 Biblioteca de procesamiento DIB
16.4.1 Estructura DIBSTRUCT
16.4.2 Función de información
16.4.3 Lectura y escritura de píxeles
16.4.4 Creación y conversión
16.4.5 Archivos de encabezado y macros DIBHELP
16.4.6 Programa DIBBLE
16.4.7 Rueda de color de ajuste simple; rueda de color optimizada
16.4.8 Distribución uniforme
16.6 Formato de conversión
Capítulo 17 Texto y fuentes
17.1 Salida de texto simple
17.1.1 Función de salida de texto
17.1.2 Atributo de contenido del dispositivo del texto
17.1.3 Usar fuentes de respaldo
p>
17.2 Fondo de fuente
17.2.1 Estilo de fuente
17.2.2 Fuente TrueType
17.2.3 Propiedades o estilos
17.2.4 Espaciado y espaciado
17.2.5 Problemas de pulgadas lógicas
17.3 Lógicas fuentes
17.3.1 Creación y selección de fuentes lógicas
17.3.2 Programa PICKFONT
17.3.3 Estructura de fuentes lógicas
17.3 .4 Algoritmo de mapeo de fuentes
17.3.5 Obtención de información de fuentes
17.3.6 Conjuntos de caracteres y Unicode
17.3.7 Sistema EZFONT
17.3.8 Rotación de fuentes
17.4 Lista de fuentes
17.4.1 Función de lista
17.4.2 Cuadro de diálogo "Elegir fuente"
17.5 Formato de párrafo
17.5.1 Formato de texto simple
17.5.2 Uso de párrafos
17.5.3 Vista previa de la salida de impresión
17.6 Interesante cosas
17.6.1 Ruta de dibujo GDI
17.6.2 Pincel extendido
17.6.3 Cuatro programas de muestra
Capítulo 18 METARCHIVO
18.1 Formato de METARCHIVO antiguo
18.1.1 Uso simple del metarchivo de memoria
18.1 Almacenamiento de metarchivo en el disco
18.1. metarchivo y portapapeles
18.2 METARCHIVO mejorado
18.2.1 Programa básico
18.2.2 Revelando la verdad
18.2.3 metarchivo y Objetos GDI
18.2.4 metarchivo y mapa de bits
>18.2.5 Listar el contenido del metarchivo
18.2.6 Incrustar imágenes
18.2.7 Visor e impresora de metarchivos mejorados
18.2.8 Visualización precisa de la imagen del metarchivo p>
18.2.9 Escala y relación de aspecto
18.2.10 Método de mapeo en metarchivo
18.2.11 Mapeo y visualización
Parte III Temas avanzados
Capítulo 19 Interfaz de múltiples documentos
19.1 Concepto MDI
19.1.1 Composición de MDI
19.1.2 Soporte de MDI
19.2 Programa de muestra MDI
19.2.1 Tres menús
19.2.2 Inicialización del programa
19.2.3 Crear subventana
19.2.4 Procesamiento de mensajes sobre la ventana de marco
19.2.5 Ventana de subdocumento
19.2.6 Procesamiento final
p>Capítulo 20 Multitarea y multiproceso
20.1 Varios modos de multitarea
20.1.1 Multitarea bajo DOS
20.1 .2 Multitarea no prioritaria
20.1.3 Presentación Administrador y colas de mensajes serializados
20.1.4 Soluciones multiproceso
20.1 .5 Arquitectura multiproceso
20.1.6 "Peleas" entre subprocesos p>
20.1.7 Beneficios de Windows
20.1.8 ¡Nuevo y mejorado! ¡Se admiten subprocesos múltiples!
20.2 Procesamiento multiproceso de WINDOWS
20.2.1 Otra discusión sobre rectángulos aleatorios
20.2.2 Problemas en concursos de programación
20.2 .3 Solución multiproceso
20.2.4 ¿Alguna pregunta?
20.2.5 Beneficios del sueño
20.3 Sincronización de subprocesos
20.3.1 Región crítica
20.3.2 Señal de evento
p>
20.3.3 Programa BIGJOB1
20.3.4 Objeto de evento
20.3.5 Espacio de almacenamiento del área de subprocesos (TLS)
Capítulo 21 Biblioteca de enlaces dinámicos
21.1 Conocimientos básicos de la biblioteca de enlaces dinámicos
21.1.1 Biblioteca: la palabra tiene múltiples significados
21.1.2 Una DLL simple
21.1.3 Puntos de entrada/salida de la biblioteca
21.1.4 Programa de prueba
21.1 Acceso a memoria en DLL
21.1.5 STRPROG. programa
21.1.6 Uso de datos entre entidades de ejecución STRPROG
21.2 Discusión de varias DLL
21.2.1 Enlaces dinámicos sin ingresar información de referencia
21.2.2 Biblioteca de recursos puros
Capítulo 22 Sonido y música
22.1 WINDOWS y multimedia
22.1.1 Hardware multimedia
22.1.2 Descripción general de API
22.1.3 Estudiar MCI con TESTMCI
22.1.4 MCITEXT y sonido de CD
22.2 Sonido de forma de onda
22.2.1 Sonido y forma de onda
22.2.2 Modulación de código de pulso
22.2.3 Frecuencia de muestreo
22.2.4 Tamaño de muestra
22.2.5 Generación de ondas sinusoidales en software
22.2.6 Grabador digital
22.2.7 Otra interfaz MCI
22.2
.8 Método de cadena de comando MCI
22.2.9 Formato de archivo de sonido de forma de onda
22.2.10 Experimento de síntesis de superposición
22.2.11 Sonido de forma de onda de señal de despertador
22.3 MIDI y Música
22.3.1 Uso de MIDI
22.3.2 Cambios de programa
22.3.3 Canales MIDI
22.3.4 Mensajes MIDI
22.3.5 Introducción a los arreglos MIDI
22.3.6 Tocar un sintetizador MIDI a través del teclado
22.3.7 MIDI Hits Drum Instrument
22.3.8 Función de tiempo multimedia
22.3.9 E/S de archivos RIFF
Capítulo 23 Entendiendo INTERNET
23.1 Sockets WINDOWS
23.1.1 Sockets y TCP/IP
23.1.2 Servicio de hora de red
23.1.3 Programa NETTIME
23.2 WININET y FTP
23.2.1 Descripción general de la API FTP
23.2.2 Programa de visualización de actualización