Programación en Windows y MFCs

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Programación en Windows y MFCs"

Transcripción

1 Programación en Windows y MFCs Tema 6 Grupo 46 TACC II Curso 2008/09 1

2 Indice Programación bajo Windows. Introducción. Hola mundo!. El API de Windows. Introducción a las MFCs. Arquitectura Documento/Vista. Aspectos avanzados de las MFCs. Bibliografía. 2

3 Programación Bajo Windows Proramación orientada a eventos, en contraste con la programación para MS-DOS, que es secuencial. Evento: Algo que sucede en el sistema (click de ratón, movimiento de ratón, pulsación de una tecla, etc.) Windows convierte estos eventos en mensajes (añaden información a los eventos). P.ej.: cuando se hace click con el ratón, el mensaje incluye las coordenadas, la ventana sobre la que se pulsó, etc. Windows pasa el mensaje a la parte interesada (ej. la ventana sobre la que se hizo click). La aplicación puede obviar el mensaje, o puede tener código que la haga reaccionar. 3

4 Programación Bajo Windows Estructura genérica de una aplicación windows: 1. Iniciar la aplicación. Iniciar la aplicación y la instancia. En las versiones de 32 bits se inicializa la aplicación cada vez que se inicializa la instancia. En las versiones de 16 bits sólo con la 1ª instancia (compartir información, ahorro memoria). Todas las aplicaciones tienen una o más ventanas (hay excepciones, como los controladores de dispositivo). Clases (tipos) de ventanas definidas mediante parámetros. Registro de la clase de ventana. Esto se hace al inicializar la aplicación. Al inicializar la instancia, se crea una ventana de la clase definida. Hay que dar el nombre de la ventana, sus coordenadas, d dimensiones, menú, etc. 2. Esperar que llegue algún mensaje. 3. Reaccionar ante el mensaje recibido. 4. Volver a 2. 4

5 Programación Bajo Windows Estructura genérica de una aplicación windows: 1. Iniciar la aplicación. 2. Esperar que llegue algún mensaje. Bucle de captura de mensajes. Filtrar los mensajes que van a la aplicación, adaptarlos y hacerlos llegar a la ventana correspondiente. Procedimiento de ventana, recibe mensaje y adopta uno u otro comportamiento. 3. Reaccionar ante el mensaje recibido. 4. Volver a 2. 5

6 #include "stdafx.h" #include <windows.h> // Crear un proyecto win32 application vacío (o Hello World en VC 6.0) LRESULT CALLBACK GestorMensajes( HANDLE hwnd, UINT mensaje, WPARAM wparam, LPARAM lparam) { HDC hdc; // Device context PAINTSTRUCT ps; // Estructura de dibujado RECT rect; // Rectángulo cliente Hola Mundo! switch (mensaje) { case WM_PAINT: hdc = BeginPaint((HWND)hWnd, i &ps); GetClientRect((HWND)hWnd,&rect); DrawText(hDc, TEXT(" Hola Mundo! ), -1, &rect, DT_SINGLELINE DT_CENTER DT_VCENTER); EndPaint((HWND)hWnd, &ps); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc((HWND)hWnd,mensaje,wParam,lParam); d P ) 6 return (NULL);

7 Hola Mundo! BOOL IniciaAplicacion (HINSTANCE hinstance) { WNDCLASS wc; wc.style = CS_HREDRAW CS_VREDRAW; //Estilo de la clase wc.lpfnwndproc = (WNDPROC)GestorMensajes; // Procedimiento gestor wc.cbclsextra = 0; wc.cbwndextra = 0; wc.hinstance = hinstance; // Instancia wc.hicon = LoadIcon(NULL, IDI_APPLICATION); // Icono de la ventana wc.hcursor = LoadCursor(NULL, IDC_ARROW); // cursor de la ventana wc.hbrbackground = (HBRUSH)GetStockObject(WHITE_BRUSH); BRUSH); // Color de fondo wc.lpszmenuname = NULL; // Nombre del menú asociado wc.lpszclassname = TEXT("ClaseVentana ); // Nombre de la clase de la ventana return (RegisterClass(&wc)); 7

8 Hola Mundo! BOOL IniciaInstancia(HINSTANCE hinstance, int ncmdshow) { HWND hwnd; hwnd = CreateWindow( TEXT("ClaseVentana ), // Clase de ventana a la que pertenece (caract. UNICODE) TEXT("TACC II, grupo 46, curso 2008/09 ),// Título de la ventana WS_OVERLAPPEDWINDOW WS_HSCROLL WS_VSCROLL, _ _ // Estilo CW_USEDEFAULT, // Posicion X por defecto CW_USEDEFAULT, // Posicion Y por defecto CW_USEDEFAULT, // Anchura por defecto CW_USEDEFAULT, // Altura por defecto NULL, // Sin ventana padre NULL, // Sin menu hinstance, // Instancia NULL); // Parametros if (!hwnd) return FALSE; ShowWindow(hWnd, ncmdshow); // dice cómo mostrar la ventana UpdateWindow(hWnd); // actualiza la ventana: genera un evento WM_PAINT return TRUE; 8

9 Hola Mundo! int WINAPI WinMain (HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow) { MSG Mensaje; BOOL bret; if (!hprevinstance){ if (!IniciaAplicacion(hInstance)) return FALSE; if (!IniciaInstancia(hInstance, ncmdshow)) return FALSE; while ((bret = GetMessage(&Mensaje, NULL, NULL, NULL))!= 0) { TranslateMessage(&Mensaje); // traduce de teclas convencionales a WM_CHAR DispatchMessage(&Mensaje); // hace llegar el mensaje al proc. de ventana return (Mensaje.wParam); 9

10 La clase de Ventana typedef struct { UINT style; // combinación de estilos de clase WNDPROC lpfnwndproc; // Puntero al procedimiento de ventana int cbclsextra; // num. bytes extra a asignar seguidos a esta estructura int cbwndextra; // num. bytes extra a asignar seguidos a la instancia HINSTANCE hinstance; // handle a la instancia que contiene el proc. ventana HICON hicon; // handle al icono de la clase (si NULL se da uno por def). HCURSOR hcursor; // handle al cursor de la clase HBRUSH hbrbackground; // handle a brocha para color de fondo, o un color LPCTSTR lpszmenuname; // nombre del menú asociado LPCTSTR lpszclassname; // nombre de la clase de ventana WNDCLASS, *PWNDCLASS; Tipos de clases de ventana: del sistema (ej.: BUTTON, COMBOBOX, etc.), globales y locales de aplicación. Algunos estilos: CS_HREDRAW, CS_VREDRAW (redibuja la venta entera si hay un cambio de tamaño horizontal), CS_NOCLOSE,. La estructura WNDCLASSEX permite asociar un icono pequeño a la ventana (RegisterClassEx). 10

11 Inicialización de la Instancia HWND CreateWindow( LPCTSTR lpclassname, // nombre registrado clase de ventana LPCTSTR lpwindowname, // título de la ventana DWORD dwstyle, // estilo de la ventana int x, // posición ió horizontal de la ventana int y, // posición vertical de la ventana int nwidth, // anchura de ventana int nheight, // altura de ventana HWND hwndparent, // handle de la ventana padre HMENU hmenu, // handle del menú de ventana HINSTANCE hinstance, // handle a la instancia de la aplicación LPVOID lpparam ); // puntero a parámetros. Creación de una ventana de una clase registrada. CreateWindowEx para estilos extendidos (ej.: layered windows-> ventanas no rectangulares o que cambian de forma) 11

12 Estilos de Ventana WS_BORDER: ventana con borde fino. WS_CAPTION: ventana con barra de título (incluye WS_BORDER). WS_CHILD, WS_CHILDWINDOW : ventana hija (no puede tener menú ni puede usarse con WS_POPUP). WS_CLIPCHILDREN: Excluye el área ocupada por las ventanas hijas cuando se dibuja e la padre. Se usa cuando se crea la ventana padre. WS_CLIPSIBLINGS: WS_DISABLED: crea una ventana deshabilitada. WS_DLGFRAME: ventana con borde igual al de las cajas de diálogo. WS_GROUP: Primer control de un grupo. WS_HSCROLL: ventana con scrooll horizonta. WS_ICONIC, WS_MINIMIZE: ventana inicialmente minimizada. WS_MAXIMIZE: ventana inicialmente maximizada. WS_MAXIMIZEBOX, WS_MINIMIZEBOX : ventana con botón de maximizar/minimizar. WS_OVERLAPPED, WS_TILED; ventana con título y borde. WS_OVERLAPPEDWINDOW, WS_TILEDWINDOW: ventana con estilos: WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, y WS_MAXIMIZEBOX WS_POPUP: ventana de pop-up. WS_POPUPWINDOW : ventana de pop-up con WS_BORDER, WS_POPUP, y WS_SYSMENU WS_SIZEBOX, WS_THICKFRAME: ventana con borde redimensionable. WS_SYSMENU: S ventana a con menú de sste sistema. WS_TABSTOP: control que recibe el foco cuando se pulsa TAB. WS_VISIBLE: ventana inicialmente visible. 12 WS_VSCROLL: ventana con barra de desplazamiento vertical.

13 Estilos de Ventana Menú de sistema Barra de título Botones minimizar/ maximizar/cerrar borde Area cliente Scroll horizontal Scroll vertical 13

14 Mensajes Mensajes: typedef struct { HWND hwnd; // handle a la ventana que recibe el mensaje UINT message; // identificador del mensaje WPARAM wparam; // info adicional, dependiente del tipo de mensaje LPARAM lparam; // info adicional, dependiente del tipo de mensaje DWORD time; // instante en el que el mensaje fue enviado POINT pt; // posición del cursor en coordenadas de pantalla MSG, *PMSG; Todos los mensajes que envía windows empiezan por WM_XXX y están definidos en windows.h 14

15 GetMessage GetMessage: Espera a que llegue un mensaje. BOOL GetMessage( LPMSG lpmsg, HWND hwnd, UINT wmsgfiltermin, UINT wmsgfiltermax ); lpmsg: Puntero a la estructura MSG que recibe el mensaje hwnd: Handle de la ventana que recibe los mensajes. wmsgfiltermin: Menor valor entero del mensaje a recibir (ej.: WM_KEYFIRST, WM_MOUSEFIRST o WM_INPUT) wmsgfiltermax: Mayor valor entero del mensaje a recibir (ej.: WM_KEYFIRST, WM_MOUSEFIRST o WM_INPUT) Retorno: Si se devuelve un mensaje distinto de WM_QUIT, el valor es distinto de cero. Si el mensaje es WM_QUIT, el valor es cero. Si hay un error el valor es -1. Por ejemplo, esto sucede si hwnd es un handle de ventana inválida o lpwnd es un puntero inválido. 15

16 DispatchMessage MSG hwnd=h DispatchMessage instancias de ventana hinstance=h lpclassname = CN hinstance=h1 lpclassname = CN hinstance=h2 lpclassname = CN2 hinstance=h3 lpclassname=cn3 WNDCLASS lpszclassname = CN lpfnwndproc=proc lpszclassname = CN2 lpfnwndproc=proc2 lpszclassname = CN3 lpfnwndproc=proc3 lpfnwndproc proc lpfnwndproc proc2 lpfnwndproc proc3 clases de ventana registradas LRESULT CALLBACK proc (HANDLE LRESULT CALLBACK proc2 LRESULT CALLBACK proc3 hwnd, UINT mensaje, WPARAM wparam, LPARAM lparam){.. (HANDLE hwnd, UINT mensaje, WPARAM wparam, LPARAM lparam){.. (HANDLE hwnd, UINT mensaje, WPARAM wparam, 16 LPARAM lparam){..

17 Handles Un identificador para los distintos objetos: ventanas, controles (que son ventanas), ficheros, imágenes, memoria, etc. Similar a punteros: se obtienen y luego se destruyen. 17

18 Gestionar un nuevo evento LRESULT CALLBACK GestorMensajes( { HDC hdc; // Device context // HANDLE hwnd, UINT mensaje, WPARAM wparam, LPARAM lparam) switch (mensaje) { case WM_LBUTTONDOWN: MessageBox((HWND)hWnd, TEXT("Button click"), TEXT("dialogo"), MB_ICONHAND); break; default: return DefWindowProc((HWND)hWnd,mensaje,wParam,lParam); return (NULL); 18

19 Juegos de Caracteres ~1890: BCDIC (6 bits->64 caracteres). ~1950: ASCII (7 bits->128 caracteres). ASCII extendido (8 bits->256 caracteres). páginas de códigos regionales para los últimos 128. DBCS: los primeros 128 bytes igual que ASCII, los posteriores ocupan dos bytes. Unicode: i d 16 bits (65536 caracteres). Sistema de doble anchura (wide char). 19

20 Caracteres Unicode Tipo de datos wchar_t. Ej.: wchar_t nombre[50]=l Bjarne Stroustrup. Mejor usar macros, que aseguran que el programa funciona en Unicode o ASCII: TCHAR * Nombre = TEXT( Hola ); 20

21 La Notación Húngara Convención para los nombres de variables (uso de prefijos), de tal manera que al leerlos sepamos su tipo. Después del prefijo se empieza por mayúsculas. Ejemplo: hwnd es un handle (h) a una ventana. lpfnwndproc es un puntero (p) largo (l) a una función (fn). Tipo de Dato Prefijo Tipo de Dato Prefijo char c DWORD(unsigned long) dw BYTE(unsigned char) by BOOL(int) o Flag b ó f short n Handle h int i Puntero p int cuando indica coordenadas x, y Función fn int cuando indica dimensiones cx, cy Cadena s WORD (unsigned int) w Cadena terminada en \0 sz LONG (long) l

22 El API de Windows Llamadas al sistema operativo, almacenadas en DLLs. Win32, WinSock, WinInet, ODBC, etc. Dentro de Win32 se engloban como extensiones el resto de las API que se puedan añadir a Windows. Win32 proprociona un entorno de programación común a la plataforma Windows: 3.1 (win32s), 95/98, NT4.0, 2000, CE, XP, Vista. En algunas plataformas el win32 (p. ej. CE) no está implementada en su totalidad. Win32: CreateWindow(), RegisterClass(), ShowWindow(), UpdateWindow(), DrawText(), etc. 22

23 Win32 Varias categorías de funciones: Administración de ventanas (en user32.dll) Crear y administrar la GUI, despachar mensajes, administrar ventanas, DDE. Ej.: CreateWindow(), RegisterClass(), ShowWindow() Graphics Device Interface (GDI). Generar salidas en distintos t dispositivos: iti pantalla, impresora. P.ej.: dibujar objetos. Ej.: BeginPaint(), GetClientRect(), DrawText(), EndPaint(). Media Control Interface (MCI). Reproducir y Grabar Audio, uso de vídeo, control de dispositivos multimedia. Servicios i del Sistema. Administración de memoria, archivos y procesos, funciones de trabajo en red, información del sistema, IPC. Remote Procedure Call (RPC). 23

24 Bibliotecas de Extensión Proporcionan P i servicios i a las apliciones i fuera del ámbito del Win32. Controles comunes. Cuadros de diálogo comunes. Descompresión de datos. Administración de intercambio dinámico de datos (DDE). Instalación de archivos. Intercambio dinámico de datos sobre redes

25 Indice Programación bajo Windows. Introducción a las MFCs. Introducción. Ventana vacía sin el wizard. Uso del wizard. Un vistazo a las clases de MFC. Mapas de Mensajes. Menús y Teclas Aceleradoras. Diálogos Comunes. Controles. Clases de utilidad Arquitectura Documento/Vista. Aspectos avanzados de las MFCs. Bibliografía. 25

26 Microsoft Foundation Classes El API para la programación directa de aplicaciones i Windows da acceso total a la funcionalidad del sistema operativo, pero es de bajo nivel. MFC es un framework que ofrece una serie de funciones, constantes, tipos de datos y clases que simplifica la creación de aplicaciones para las distintas plataformas Windows. Es la respuesta de Microsoft a frameworks de otras compañias como OWL de Borland. Visual C++ contiene un asistente (wizard) que facilita la creación de aplicaciones MFC (generación de código). 26

27 Clases Básicas para la creación de ventanas 27

28 Secuencia de Creación de una Aplicación 28

29 #include "stdafx.h" #include <afxwin.h> // MFC core and standard d components Creación de una #include <afxext.h> // MFC extensions // proyecto con Shared DLL Ventana en Blanco sin #ifdef _DEBUG #define new DEBUG_NEW #endif el wizard class CMainFrame : public CFrameWnd { public: CMainFrame() { Create(NULL, _T("Hellow World Application")); // suele ir en OnCreate() ; // se suele llamar a LoadFrame class HelloWorldApp : public CWinApp { public: virtual BOOL InitInstance(); t ; HelloWorldApp theapp; // Declarar un unico objecto CWinApp BOOL HelloWorldApp::InitInstance() { CWinApp::InitInstance(); SetRegistryKey(_T("Hello y(_ ( World Application")); CMainFrame* pframe = new CMainFrame; if (!pframe) return FALSE; m_pmainwnd = pframe; pframe->showwindow(sw_show); pframe->updatewindow(); d return TRUE; //NOTA: El WinMain está dentro del framework MFCs 29

30 Uso del Asistente Configuración Inicial de la Aplicación File/new Project; seleccionar MFC Application 30

31 Uso del Asistente Configuración Inicial de la Aplicación Configurar el tipo de aplicación: Single document Sin soporte de arquitectura Documento/Vista. MFC en librería estática (incluye en el exe las DLLs necesarias) 31

32 Uso del Asistente Configuración Inicial de la Aplicación Configurar el soporte para BBDD 32

33 Uso del Asistente Configuración Inicial de la Aplicación Configurar la interfaz de usuario 33

34 Uso del Asistente Configuración Inicial de la Aplicación Configurar nombre de las clases y de los ficheros que se van a generar 34

35 Uso del Asistente Aplicación Generada 35

36 Uso del Asistente Qué ficheros se han generado? Definición i ió de nombres de los recursos, para poder ser usados por la aplicación. Fichero de recursos (.rc y.rc2). Clase de la ventana de trabajo (hereda de CWnd), dentro de la ventana marco Clase Aplicación (hereda de CWinApp) Clase de la ventana marco (hereda de CFrameWnd) Cabeceras precompiladas. stdafx.h incluye las cabeceras comunes del sistema. Se ha de incluir antes que cualquier otra 36

37 Uso del Asistente Recursos de la Aplicación Resource.h #define IDD_ABOUTBOX 100 #define IDP_OLE_INIT_FAILED 100 #define IDR_MAINFRAME 128 #define IDR_HelloMFCsTYPE

38 Uso del Asistente Estructura de la Aplicación WinMain(): i Dentro del framework. Se llama a métodos miembros del único objeto de tipo CWinApp: InitApplication(): Normalmente no hay que tocar este método. InitInstance(): Tareas generales de la aplicación, ej: inicializar OLE. Después se crean las ventanas de la aplicación, y se hacen visibles (ShowWindow()) Run(): Que implementa al bucle de mensajes hasta que llega WM_QUIT. CWinApp: Clase que hay que subclasificar, se debe crear un objeto único global. Procesa mensajes hasta que llega WM_QUIT, momento en el que ejecuta ExitInstance() por defecto. Si no hay mensajes, llama a onidle(), vacía por defecto. 38

39 39 Secuencia de Creación de una Aplicación

40 Uso del Asistente Estructura de la Aplicación: La clase ventana (CWnd) Casi todas las aplicaciones i tienen una o más ventanas. La clase base es CWnd. Contiene un handle a la ventana física de Windows. La ventana física se crea mediante Create(), se destruye con el destructor de la subclase de CWnd. Parámetros de Create(): lpszclassname: nombre de la clase registrada con AfxRegisterWindowClass() o NULL (atributos por defecto). lpszwindowname: nombre de la ventana. dwstyle: Estilo de la ventana a crear. rect: Referencia a un objeto constante de tipo RECT, para indicar posición y tamaño de la ventana. pparentwindow: puntero al objecto CWnd padre de la ventana. No puede ser NULL. Si la ventana es la principal, i usar CreateWindowEx(). nid: Identificador de la ventana. pcontext: t Puntero a un objeto de tipo CCreateContext, C t t para asociar vistas y documentos a la ventana, puede ser NULL. 40

41 Uso del Asistente Estructura de la Aplicación: La clase ventana (CWnd) CWnd agrupa acciones que se podían realizar sobre ventanas. Las hace más accesibles y seguras. Evita por ejemplo tener que pasar el handle como primer parámtero (almacenado en el atributo m_hwnd). Ejemplo: los métodos de CWnd: void CWnd::MoveWindow( int x, int y, int nwidth, int nheight, BOOL brepaint = TRUE ); void CWnd::MoveWindow( LPCRECT lprect, BOOL brepaint = TRUE ); encapsulan la llamada a la API de Windows: BOOL MoveWindow( HWND hwnd, int X, int Y, int nwidth, int nheight, BOOL brepaint); 41

42 Uso del Asistente Estructura de la Aplicación: La clase CFrameWnd Hereda de CWnd, es utilizado en aplicaciones i SDI. Tiene en su interior una ventana hija que normalmente será la ventana principal de la aplicación. La ventana marco interacciona con el usuario cambiando el tamaño, moviéndose, etc., y gestiona estos cambios provocando modificaciones en la ventana hija. Para crear una ventana marco: Create(), LoadFrame(), que toma menos parámetros. Toma valores por defecto de los recursos que se le pasan como parámetros: menú, título, icono y tabla de teclas acelaradoras. virtual BOOL LoadFrame( UINT nidresource, DWORD dwdefaultstyle = WS_OVERLAPPEDWINDOW FWS_ADDTOTITLE, CWnd* pparentwnd = NULL, CCreateContext* pcontext = NULL ); Se destruye llamando a DestroyWindow(). Sus clases derivadas deben declarar DECLARE_DYNCREATE() DYNCREATE() (gestión dinámica de clases) si se usa la arquitectura documento/vista, y poner IMPLEMENT_DYNCREATE() en la implementación. 42

43 Uso del Asistente Handles Las clases de la MFC ocultan los handles (CWnd::m_hWnd), para facilitar su uso. Se pueden construir objetos a partir de elementos gráficos ya construidos: static CWnd* PASCAL FromHandle( HWND hwnd ); El objeto devuelto es temporal (eliminado en próxima llamada a OnIdle()). Clases que encapsulan handles a objetos gráficos: Elemento Gráfico HWND HDC HMENU HPEN, HBRUSH, HFONT, HBITMAP, HPALETTE, HRGN HIMAGELIST SOCKET Clase de Objeto CWnd y derivadas CDC y derivadas CMenu CGdiObject CImageList CSocket 43

44 Uso del Asistente Dónde está el bucle de eventos? Tabla con los elementos a manejar: el mapa de mensajes. Mediante Macros, normalmente insertadas por el asistente. Declaración del mapa de mensajes en la clase: DECLARE_MESSAGE_MAP(). MAP(). Declaramos también los métodos que manejarán los mensajes mediante afx_msg: class CMainFrame : public CFrameWnd { public: CMainFrame(); protected: DECLARE_DYNAMIC(CMainFrame) DYNAMIC(CM // Funciones de asignación de mensajes generadas protected: afx_msg int OnCreate(LPCREATESTRUCT lpcreatestruct); afx_msg void OnSetFocus(CWnd *poldwnd); DECLARE_MESSAGE_MAP() ; 44

45 Uso del Asistente Dónde está el bucle de eventos? Una vez declarado, hay que definir el mapa de mensajes, y enlazar cada mensaje con la función que la va a procesar. En el fichero de implementación (.cpp) se añade: BEGIN_MESSAGE_MAP() //{{AFX_MSG_MAP(CMainFrame) ON_WM_CREATE() Mensajes que ON_WM_SETFOCUS() se van a tratar //AFX_MSG_MAP MAP END_MESSAGE_MAP() Usado por versiones anteriores de Visual C++ Los mensajes no referenciados en la tabla se pasan a la clase padre (o a la clase de la ventana contenedora), y así sucesivamente hasta que se trate por algún ancestro. 45

46 Uso del Asistente Código Generado: HelloMFCs.h // HelloMFCs.h: archivo de encabezado principal para la aplicación HelloMFCs #pragma once #ifndef AFXWIN_H #error "incluir 'stdafx.h h' antes de incluir este archivo para PCH" #endif #include "resource.h" // Símbolos principales class CHelloMFCsApp : public CWinApp { public: CHelloMFCsApp(); // Reemplazos public: virtual BOOL InitInstance(); // Implementación public: afx_msg void OnAppAbout(); DECLARE_MESSAGE_MAP() MAP() ; extern CHelloMFCsApp theapp; 46

47 #include "stdafx.h" #include "HelloMFCs.h" #include "MainFrm.h Uso del Asistente #ifdef _DEBUG #define new DEBUG_NEW #endif BEGIN_MESSAGE_MAP(CHelloMFCsApp, CWinApp) ON_COMMAND(ID_APP_ABOUT, &CHelloMFCsApp::OnAppAbout) END_MESSAGE_MAP() Código Generado: HelloMFCs.cpp (i) CHelloMFCsApp::CHelloMFCsApp() { // TODO: agregar aquí el código de construcción, Colocar toda la inicialización importante en InitInstance CHelloMFCsApp theapp; // El único objeto CHelloMFCsApp // Inicialización de CHelloMFCsApp BOOL CHelloMFCsApp::InitInstance() { INITCOMMONCONTROLSEX InitCtrls; InitCtrls.dwSize = sizeof(initctrls); InitCtrls.dwICC = ICC_WIN95_CLASSES; InitCommonControlsEx(&InitCtrls); CWinApp::InitInstance(); if (!AfxOleInit()) {// Inicializar bibliotecas OLE AfxMessageBox(IDP_OLE_INIT_FAILED); return FALSE; AfxEnableControlContainer(); SetRegistryKey( y(_ T("Aplicaciones generadas con el Asistente para aplicaciones local")); CMainFrame* pframe = new CMainFrame; if (!pframe) return FALSE; m_pmainwnd = pframe; // Crear y cargar el marco con sus recursos pframe->loadframe(idr_mainframe, WS_OVERLAPPEDWINDOW FWS_ADDTOTITLE, NULL,NULL); NULL); pframe->showwindow(sw_show); // Se ha inicializado la única ventana; mostrarla y actualizarla pframe->updatewindow(); return TRUE; 47

48 // Cuadro de diálogo CAboutDlg utilizado // para el comando Acerca de // para el comando Acerca de Uso del Asistente class CAboutDlg : public Cdialog { public: CAboutDlg(); // Datos del cuadro de diálogo enum { IDD = IDD_ABOUTBOX ; protected: Código Generado: HelloMFCs.cpp (ii) virtual void DoDataExchange(CDataExchange* g pdx); // Compatibilidad con DDX/DDV // Implementación protected: DECLARE_MESSAGE_MAP() ; CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { void CAboutDlg::DoDataExchange(CDataExchange* g g pdx) { CDialog::DoDataExchange(pDX); BEGIN_ MESSAGE_ MAP(CAboutDlg, CDialog) END_MESSAGE_MAP() // Comando de la aplicación para ejecutar el cuadro de diálogo void CHelloMFCsApp::OnAppAbout() { CAboutDlg aboutdlg; aboutdlg.domodal(); 48

49 #pragma once #include "ChildView.h" Uso del Asistente Código Generado: MainFrm.h (i) class CMainFrame : public CFrameWnd { Permite acceder a información en tiempo de public: CMainFrame(); ejecución a la clase (puede usarse la macro protected: DECLARE_DYNAMIC(CMainFrame) DYNAMIC(CMainFrame) RUNTIME_CLASS en la arquitectura t // Reemplazos documento/vista) public: virtual BOOL PreCreateWindow(CREATESTRUCT& cs); virtual BOOL OnCmdMsg(UINT nid, int ncode, void* pextra, AFX_CMDHANDLERINFO CMDHANDLERINFO* phandlerinfo); // Implementación public: virtual ~CMainFrame(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; #endif protected: // Miembros incrustados de la barra de control CStatusBar m_wndstatusbar; CToolBar m_wndtoolbar; CChildView m_wndview; // Funciones de asignación de mensajes generadas protected: afx_msg int OnCreate(LPCREATESTRUCT lpcreatestruct); afx_msg void OnSetFocus(CWnd *poldwnd); DECLARE_MESSAGE_MAP() ; 49

50 #include "stdafx.h" #include "HelloMFCs.h #include "MainFrm.h #ifdef _DEBUG #define new DEBUG_NEW #endif Uso del Asistente Código Generado: MainFrm.cpp (i) IMPLEMENT_DYNAMIC(CMainFrame, CFrameWnd) BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd) ON_WM_CREATE() ON_WM_SETFOCUS() END_MESSAGE_MAP() static UINT indicators[] = {ID_SEPARATOR, ID_INDICATOR_CAPS, INDICATOR CAPS, ID_INDICATOR_NUM, INDICATOR NUM, ID_INDICATOR_SCRL, INDICATOR ; // Construcción y destrucción de CMainFrame CMainFrame::CMainFrame() {// TODO: agregar aquí el código de inicialización de miembros CMainFrame::~CMainFrame() { int CMainFrame::OnCreate(LPCREATESTRUCT lpcreatestruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; // Crear una vista para ocupar el área de cliente del marco if (!m_wndview.create(null, NULL, AFX_WS_DEFAULT_VIEW, CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL)) { TRACE0("No se pudo crear la ventana de vista\n"); return -1; if (!m_wndtoolbar.createex(this, TBSTYLE_FLAT, WS_CHILD WS_VISIBLE CBRS_TOP CBRS_ GRIPPER CBRS_ TOOLTIPS CBRS_ FLYBY CBRS_ SIZE_ DYNAMIC) )!m_wndtoolbar.loadtoolbar(idr_mainframe)) { TRACE0("No se pudo crear la barra de herramientas\n"); return -1; /* no se pudo crear */ if (!m_wndstatusbar.create(this)!m_wndstatusbar.setindicators(indicators,sizeof(indicators)/sizeof(uint))) { TRACE0("No se pudo crear la barra de estado\n"); return -1; /* No se pudo crear */ // TODO: eliminar estas tres líneas si no desea que la barra de herramientas se pueda acoplar m_wndtoolbar.enabledocking(cbrs_align_any); EnableDocking(CBRS_ALIGN_ANY); DockControlBar(&m_wndToolBar); return 0; 50

51 Uso del Asistente Código Generado: MainFrm.cpp (ii) BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { // se llama por las MFCs antes de crear físicamente la ventana. se devuelve!= 0 si la creación debe continuar, 0 en otro caso. if(!cframewnd::precreatewindow(cs) C Wi d ) return FALSE; // TODO: modificar aquí la clase Window o los estilos cambiando CREATESTRUCT cs cs.dwexstyle &= ~WS_EX_CLIENTEDGE; cs.lpszclass = AfxRegisterWndClass(0); return TRUE; #ifdef f _DEBUG void CMainFrame::AssertValid() const { CFrameWnd::AssertValid(); void CMainFrame::Dump(CDumpContext& dc) const { CFrameWnd::Dump(dc); #endif //_DEBUG void CMainFrame::OnSetFocus(CWnd* /*poldwnd*/) { // enviar foco a la ventana de vista m_wndview.setfocus(); BOOL CMainFrame::OnCmdMsg(UINT nid, int ncode, void* pextra, AFX_CMDHANDLERINFO* phandlerinfo) { // Permitir que la vista se interrumpa primero en el comando if (m_wndview.oncmdmsg(nid, dm ( ncode, pextra, phandlerinfo)) return TRUE; // De lo contrario, proceder con el control predeterminado 51 return CFrameWnd::OnCmdMsg(nID, ncode, pextra, phandlerinfo);

52 Uso del Asistente Código Generado: ChildView.h // ChildView.h: h: interfaz de la clase CChildView // #pragma once // Ventana de CChildView class CChildView : public CWnd { // Construcción public: CChildView(); // Atributos public: // Operaciones public: // Reemplazos protected: virtual BOOL PreCreateWindow(CREATESTRUCT& cs); // Implementación public: virtual ~CChildView(); // Funciones de asignación de mensajes generadas protected: ; afx_msg void OnPaint(); DECLARE_MESSAGE_MAP() 52

53 #include "stdafx.h" #include "HelloMFCs.h" #include "ChildView.h" Uso del Asistente Código Generado: ChildView.cpp #ifdef _DEBUG #define new DEBUG_NEW #endif CChildView::CChildView() { CChildView::~CChildView() { BEGIN_MESSAGE_MAP(CChildView, CWnd) ON_WM_PAINT() END_MESSAGE_MAP() // Controladores de mensaje de CChildView BOOL CChildView::PreCreateWindow(CREATESTRUCT& cs) { if (!CWnd::PreCreateWindow(cs)) return FALSE; cs.dwexstyle = WS_EX_CLIENTEDGE; _ cs.style &= ~WS_BORDER; cs.lpszclass = AfxRegisterWndClass(CS_HREDRAW CS_VREDRAW CS_DBLCLKS, ::LoadCursor(NULL, IDC_ARROW), reinterpret_cast<hbrush>(color_window+1), NULL); return TRUE; void CChildView::OnPaint() { 53

54 Uso del Asistente Modificando la aplicación void CChildView::OnPaint() { CPaintDC dc(this); // Contexto de dispositivo para dibujo dc.rectangle(200, 200, 300, 320); dc.drawtext( "Hola MFCs!", -1, CRect( 200, 200, 300, 320), DT_SINGLELINE DT_CENTER DT_ VCENTER); 54

55 Bucle de Mensajes

56 Las clases MFC Arbol jerárquico de clases, con raíz CObject. CObject permite persistencia (serialize()), chequeo de consistencia de atributos (AssertValid()), Gestión de excepciones: heredan de CException. ReportError(): muestra la excepción en una ventana. GetErrorMessage(): descripción del error. Gestión de archivos: CFile. Contextos de dispositivo: CDC e hijas: Acceso al área completa de la ventana: CWindowDC. Dibujo en función del evento WM_PAINT: CPaintDC. Gestión de Objetos Gráficos: CGdiObject. Gestión de fuentes de letras: CFont. Gestión de mapas de bits de colores: CBitmap. Uso de Brochas: CBrush. Manejo de plumas: CPen. 56

57 Las clases MFC CCmdTarget: clase base para la gestión de mensajes. Clases documento: CDocument, con hijas: COleDocument, CHtmlEditDoc, etc. Gestión de comunicaciones OLE: COleObjectFactory, COleDataSource, COleDropTarget, etc. CWnd: Gestión de ventanas. CFrameWnd e hijas (ventana principal). CSplitterWnd (paneles de ventana). CControlBar (gestión de barras de control y estado): CToolBar, CStateBar, CReBar, CDialogBar. CDialog: gestión de ventanas de diálogo. CColorDialog (selección de colores), CPrintDialog (imprimir), CFileDialog (elegir un fichero), CFontDialog (selección de fuentes). 57

58 Las clases MFC Gestión de vistas en la arquitectura Documento/Vista: CView. CEditView: Edición de textos. CHtmlView: Visualización de páginas HTML. Controles (heredan de CWnd): Texto estático (CStatic). Texto modificable (CEdit). Listas de elementos: CListBox, CCheckListBox, CDrawListBox, etc. Clases que no heredan de CObject: Clases de soporte (ej.: CWaitCursor), API servidor de Internet, sincronización, etc. 58

Paradigmas de Programación

Paradigmas de Programación Paradigmas de Programación 3.2. Orientación a Eventos Departamento de Informática Universidad de Valladolid Curso 2010-11 Grado en Ingeniería Informática Grado en Ingeniería Informática de Sistemas 11

Más detalles

Windows API. 17 de Agosto de 2009. UCSC, Concepción, Chile. Windows API. Ronald Valenzuela Fica. Windows API. Ejemplos. Hello World Unicode

Windows API. 17 de Agosto de 2009. UCSC, Concepción, Chile. Windows API. Ronald Valenzuela Fica. Windows API. Ejemplos. Hello World Unicode UCSC, Concepción, Chile 17 de Agosto de 2009 Clase Anterior Etapas de la Compilación Preprocesamiento Compilación Ensamblaje Enlace Herramientas para Compilar Makefile Herramientas para Desarrollo IDE

Más detalles

Tema 7: Fundamentos de la programación sobre MS-Windows.

Tema 7: Fundamentos de la programación sobre MS-Windows. Tema 7: Fundamentos de la programación sobre MS-Windows. 1 Índice 2 1. El modelo de programación Windows: programación orientada a eventos 3 Paradigmas de programación: Programación secuencial: El programa

Más detalles

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS 1) EL PEQUEÑO EDITOR El Bloc de notas de Windows XP es un básico editor de texto con el que podemos escribir anotaciones, de hasta 1024 caracteres por línea y

Más detalles

Práctica 3: Introducción a Word

Práctica 3: Introducción a Word Departament d Enginyeria i Ciència dels Computadors Práctica 3: Introducción a Word B12. Informática I. Curso 2001/2002 Profesores: Julio Pacheco Juanjo Murgui Raul Montoliu Mª Carmen Ortiz Octubre 2001

Más detalles

PROGRAMACIÓN MULTIMEDIA PROGRAMACIÓN EN WINDOWS

PROGRAMACIÓN MULTIMEDIA PROGRAMACIÓN EN WINDOWS PROGRAMACIÓN MULTIMEDIA PROGRAMACIÓN EN WINDOWS Aportaciones de la programación en Windows Compilación de un programa Windows Estructura de un programa Windows Mensajes Ejemplos de mensajes 2 Aportaciones

Más detalles

Figura1. La IDE de MVS Express 2012

Figura1. La IDE de MVS Express 2012 UNIVERSIDAD DEL ISTMO Ingeniería en computación Compiladores PROFESOR M. en C. J. Jesús Arellano Pimentel NÚMERO DE PRÁCTICA 1 NOMBRE DE LA PRÁCTICA OBJETIVO GENERAL OBJETIVOS ESPECÍFICOS EQUIPO REQUERIDO

Más detalles

1.- MENU DE CONTROL O MENU VENTANA: permite cerrar la ventana cambiarla de tamaño y pasar a otra ventana

1.- MENU DE CONTROL O MENU VENTANA: permite cerrar la ventana cambiarla de tamaño y pasar a otra ventana EXCEL PRÓLOGO Microsoft Excel es una hoja de cálculo de gran capacidad y fácil uso. Excel no solo es una hoja de calculo, sino también tiene capacidad para diseñar bases de datos (listas) de forma totalmente

Más detalles

UF0513 Gestión auxiliar de archivo en soporte convencional o informático

UF0513 Gestión auxiliar de archivo en soporte convencional o informático UF0513 Gestión auxiliar de archivo en soporte convencional o informático Tema 1. Sistemas operativos habituales Tema 2. Archivo y clasificación de documentación administrativa Tema 3. Base de datos Tema

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos:

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos: UNIDAD 8 Presentaciones Reunión. (ITE. Banco de imágenes) as presentaciones son documentos formados por una sucesión de páginas, llamadas diapositivas, que transmiten información estructurada de manera

Más detalles

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS ARCHIVOS ANEXOS Son los documentos, hojas de cálculo o cualquier archivo que se anexa a las carpetas, subcarpetas, hallazgos u otros formularios de papeles de trabajo. Estos archivos constituyen la evidencia

Más detalles

Race Manager by Master Timing Guía del usuario GUIA RACE MANAGER. Eventronic, SL

Race Manager by Master Timing Guía del usuario GUIA RACE MANAGER. Eventronic, SL GUIA RACE MANAGER Eventronic, SL DESCRIPCIÓN DEL PROGRAMA El Race Manager es un programa que se creó para facilitar el trabajo de la dirección de carrera de un evento durante y después de una carrera.

Más detalles

WINDOWS. Iniciando Windows. El mouse

WINDOWS. Iniciando Windows. El mouse Windows es un sistema operativo, cuyo nombre lo debe al principal elemento de trabajo, la ventana - en inglés window -. Este tiene características como: Multitarea: durante una sesión de trabajo, es posible

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición.

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición. Microsoft Word Microsoft Word es actualmente (2009) el procesador de textos líder en el mundo gracias a sus 500 millones de usuarios y sus 25 años de edad. Pero hoy en día, otras soluciones basadas en

Más detalles

MultiBase Cosmos. Notas a la versión 4.4, release 1. BASE 100, S.A. www.base100.com

MultiBase Cosmos. Notas a la versión 4.4, release 1. BASE 100, S.A. www.base100.com MultiBase Cosmos Notas a la versión 4.4, release 1 BASE 100, S.A. www.base100.com Índice IMPLEMENTACIONES... 3 MÉTODOS DE LA CLASE SIMPLECONTROL... 4 MÉTODOS DE LA CLASE INTEGER... 4 MÉTODOS DE LA CLASE

Más detalles

Formularios. Formularios Diapositiva 1

Formularios. Formularios Diapositiva 1 Formularios Crear un formulario utilizando el Asistente para formularios Modificación en vista Diseño Adición de Controles a un Formulario Adición de un Subformulario a un formulario Formularios Diapositiva

Más detalles

Microsoft Access proporciona dos métodos para crear una Base de datos.

Microsoft Access proporciona dos métodos para crear una Base de datos. Operaciones básicas con Base de datos Crear una Base de datos Microsoft Access proporciona dos métodos para crear una Base de datos. Se puede crear una base de datos en blanco y agregarle más tarde las

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Generalidades y conceptos Combinar correspondencia Word, a través de la herramienta combinar correspondencia, permite combinar un documento el que puede ser una carta con el texto que se pretende hacer

Más detalles

Fundamentos CAPÍTULO 1. Contenido

Fundamentos CAPÍTULO 1. Contenido CAPÍTULO 1 Fundamentos En este capítulo encontrará instrucciones rápidas y sencillas que le permitirán poner manos a la obra de inmediato. Aprenderá también a utilizar la ayuda en pantalla, que le será

Más detalles

Guía N 1: Fundamentos básicos(i)

Guía N 1: Fundamentos básicos(i) 1 Guía N 1: Fundamentos básicos(i) Objetivos Generales: Ver una breve descripción de las capacidades más comunes de Excel Objetivos específicos: Descripción de los elementos de un libro: Hojas, iconos,

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

ADVISOR MODELO DE DESARROLLO

ADVISOR MODELO DE DESARROLLO ADVISOR MODELO DE DESARROLLO 1 1 INDICE 1 ÍNDICE... 2 2 ENTORNO... 3 3 AREA DE TRABAJO DE LA APLICACION... 3 4 BARRA DE ESTADO... 4 5 BARRA DE HERRAMIENTAS DE MENU... 4 6 MENU CONTEXTUAL... 6 7 MENU DE

Más detalles

A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla.

A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla. 4. TABLAS A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla. 4.1. Principales Elementos Al momento de generar y diseñar una tabla es importante

Más detalles

Operación Microsoft Access 97

Operación Microsoft Access 97 Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe

Más detalles

GENERACIÓN DE TRANSFERENCIAS

GENERACIÓN DE TRANSFERENCIAS GENERACIÓN DE TRANSFERENCIAS 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que la Caja efectúe transferencias, creando una base

Más detalles

Programación Orientada a Objetos con Java

Programación Orientada a Objetos con Java Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la

Más detalles

Java Inicial (20 horas)

Java Inicial (20 horas) Java Inicial (20 horas) 1 Temario 1. Programación Orientada a Objetos 2. Introducción y Sintaxis Java 3. Sentencias Control Flujo 4. POO en Java 5. Relaciones entre Objetos 6. Polimorfismo, abstracción

Más detalles

APUNTES DE WINDOWS. Windows y sus Elementos INSTITUTO DE CAPACITACIÓN PROFESIONAL. Elementos de Windows

APUNTES DE WINDOWS. Windows y sus Elementos INSTITUTO DE CAPACITACIÓN PROFESIONAL. Elementos de Windows 1 APUNTES DE WINDOWS Unidad 1: Windows y sus Elementos Elementos de Windows Escritorio: Es la pantalla que aparece cuando se inicia una sesión con Windows, desde aquí es de donde se administra el computador.

Más detalles

Guía de Aprendizaje No. 1

Guía de Aprendizaje No. 1 MICROSOFT WORD Fundamentos básicos, ejecutar Word, su ventana y sus barras de herramientas Objetivos de la Guía de Aprendizaje No. 1 Obtener fundamentos básicos sobre Procesador de Texto Microsoft Word

Más detalles

Instructivo de Microsoft Excel 2003

Instructivo de Microsoft Excel 2003 Instructivo de Microsoft Excel 2003 El presente instructivo corresponde a una guía básica para el manejo del programa y la adquisición de conceptos en relación a este utilitario. Que es Microsoft Excel?

Más detalles

PLANTILLAS DE DOCUMENTOS EN WORD 2007

PLANTILLAS DE DOCUMENTOS EN WORD 2007 1 PLANTILLAS DE DOCUMENTOS EN WORD 2007 Introducción Una plantilla es un modelo o patrón para crear nuevos documentos. En una plantilla se guarda internamente el formato utilizado, es decir, el estilo

Más detalles

Definiciones. Tema 21_Módulos Menú 1

Definiciones. Tema 21_Módulos Menú 1 Definiciones Un menú es una lista de opciones o de órdenes que forman parte de un mismo título, mediante los cuales se podrán seleccionar determinadas operaciones de la aplicación. El conjunto de todos

Más detalles

MANUAL BÁSICO DE INFORMATICA

MANUAL BÁSICO DE INFORMATICA MANUAL BÁSICO DE INFORMÁTICA EL ESCRITORIO 1 El escritorio es la primera pantalla que aparece o que se ve después de encendre la PC. Puede contener accesos directos a los programas, documentos, carpetas

Más detalles

Figura No. IV-111. Página No. 125

Figura No. IV-111. Página No. 125 7. opción del menú principal: ventana 7.3. Nombre de la opción: Cascada. Objetivo del módulo: Ordenar las ventanas abiertas por el usuario en forma de cascada. Descripción Funcional: a) Acceso Para utilizar

Más detalles

PHPMYADMIN Y MYSQL. Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin.

PHPMYADMIN Y MYSQL. Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin. PHPMYADMIN Y MYSQL Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin. PhpMyAdmin es una herramienta para la administración del servidor de base de datos MySQL que dispone

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

Herramientas Visuales de Programación

Herramientas Visuales de Programación Pág. 1 07/04/2013 Para la compilación y ejecución del código que se realizará a lo largo de este curso vamos a utilizar el entorno de programación de la Herramienta Visual Studio 2010. El entorno de programación

Más detalles

ENTORNO DE DESARROLLO MICROSOFT.NET 2010

ENTORNO DE DESARROLLO MICROSOFT.NET 2010 ENTORNO DE DESARROLLO MICROSOFT.NET 2010 UNIDAD 2 Estructura de contenidos: 1. Conociendo ASP 2. Sitio Web y Proyecto Web 3. WebForm 4. Características de los webforms 5. Entorno del.net 6. Controles básicos

Más detalles

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP Características del Explorador de Windows El Explorador de Windows es una de las aplicaciones más importantes con las que cuenta Windows. Es una herramienta indispensable

Más detalles

5.- Crear páginas web con Nvu

5.- Crear páginas web con Nvu 5.- Crear páginas web con Nvu Nvu permite crear y publicar páginas web sin necesidad de tener conocimientos de HTML y de una forma tan sencilla como utilizar un procesador de textos. La barra de herramientas

Más detalles

Aplicateca. Manual de Usuario: Ilion Factura Electrónica. Espíritu de Servicio

Aplicateca. Manual de Usuario: Ilion Factura Electrónica. Espíritu de Servicio Aplicateca Manual de Usuario: Ilion Factura Electrónica Espíritu de Servicio Índice 1 Introducción... 4 1.1 Qué es Ilion Factura electrónica?... 4 1.2 Requisitos del sistema... 4 1.3 Configuración del

Más detalles

CONVERSOR LIBROS DE REGISTRO (IVA IGIC) Agencia Tributaria DEPARTAMENTO DE INFORMÁTICA TRIBUTARIA

CONVERSOR LIBROS DE REGISTRO (IVA IGIC) Agencia Tributaria DEPARTAMENTO DE INFORMÁTICA TRIBUTARIA CONVERSOR LIBROS DE REGISTRO (IVA IGIC) Agencia Tributaria DEPARTAMENTO DE INFORMÁTICA TRIBUTARIA ÍNDICE DEL DOCUMENTO 1. INTRODUCCIÓN...2 1.1. REQUISITOS TÉCNICOS...2 2. DECLARACIONES...3 2.1. CREAR UNA

Más detalles

Gestor de contenidos de la plataforma web

Gestor de contenidos de la plataforma web Gestor de contenidos de la plataforma web 2011 1 de 24 Funcionamiento del gestor de contenidos Acceso Para acceder al la extranet es necesario ir a la dirección web: http://www.tudominio.com/adm e introducir

Más detalles

Operación de Microsoft Excel

Operación de Microsoft Excel Representación gráfica de datos Generalidades Excel puede crear gráficos a partir de datos previamente seleccionados en una hoja de cálculo. El usuario puede incrustar un gráfico en una hoja de cálculo,

Más detalles

UNIVERSIDAD DEL ISTMO Ingeniería en computación Estructura de datos

UNIVERSIDAD DEL ISTMO Ingeniería en computación Estructura de datos UNIVERSIDAD DEL ISTMO Ingeniería en computación Estructura de datos CICLO ESCOLAR 20092010B PROFESOR M. en C. J. Jesús Arellano Pimentel GRUPO 204 NÚMERO DE PRÁCTICA 1 NOMBRE DE LA PRÁCTICA OBJETIVO GENERAL

Más detalles

Manual de Windows XP

Manual de Windows XP Universidad de Chiclayo Pagina 1 1. Sistema Operativo 2. El escritorio (desktop) 3. Íconos importantes 4. Menú contextual 5. Carpetas 6. Fondo del escritorio (papel tapiz) 7. El protector de pantalla 8.

Más detalles

Kaldeera Advanced Forms 2009 Guía del usuario

Kaldeera Advanced Forms 2009 Guía del usuario Kaldeera Advanced Forms 2009 Guía del usuario Indice Usando Kaldeera Advanced Forms 2009... 3 Accediendo a la página de configuración... 3 Activando o desactivando la funcionalidad de Kaldeera Advanced

Más detalles

Procesador de textos MS Word 97 (1 de 2) (aplicable a MS Word para Office XP)

Procesador de textos MS Word 97 (1 de 2) (aplicable a MS Word para Office XP) Introducción a la Informática - TEMA 5: Procesador de Texto 1 Procesador de textos MS Word 97 (1 de 2) (aplicable a MS Word para Office XP) Departament d Informàtica de Sistemes i Computadors 1 Contenido

Más detalles

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la

Más detalles

POWER POINT. Iniciar PowerPoint

POWER POINT. Iniciar PowerPoint POWER POINT Power Point es la herramienta de Microsoft Office para crear presentaciones que permiten comunicar información e ideas de forma visual y atractiva. Iniciar PowerPoint Coloque el cursor y dé

Más detalles

Curso de Python Inicial

Curso de Python Inicial Logo IAA-CSIC Curso organizado por el Gabinete de Formación del CSIC Curso de Python Inicial Clases Contenidos 1. Paradigmas de la Programación 2. Programación Orientada a objetos 3. Clases 4. Objetos

Más detalles

Trabajar con diapositivas

Trabajar con diapositivas Trabajar con diapositivas INFORMÁTICA 4º ESO POWERPOINT Una vez creada una presentación podemos modificarla insertando, eliminando, copiando diapositivas, Insertar una nueva diapositiva.- Para insertar

Más detalles

GVisualPDA Módulo de Almacén

GVisualPDA Módulo de Almacén GVisualPDA Módulo de Almacén GVisualPDA es una aplicación para Windows Mobile 5/6 que amplía más aún las posibilidades de integración del software de gestión GVisualRec permitiendo estar conectados en

Más detalles

Eurowin 8.0 SQL. Manual de la FIRMA DIGITALIZADA

Eurowin 8.0 SQL. Manual de la FIRMA DIGITALIZADA Eurowin 8.0 SQL Manual de la FIRMA DIGITALIZADA Documento: me_firmadigitalizada Edición: 02 Nombre: Manual de la Firma Digitalizada en Eurowin Fecha: 19-05-2011 Tabla de contenidos 1. FIRMA DIGITALIZADA

Más detalles

Plantilla de texto plano

Plantilla de texto plano Plantilla de texto plano Esta es la plantilla seleccionada por defecto al crear una nueva página. Título: Es el título que aparecerá identificando a la página, así como en la cabecera del documento en

Más detalles

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Máquina Expendedora (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Circulo (1.0 pto.)... 3 1.3 Ejercicio

Más detalles

Diseño de páginas web

Diseño de páginas web Diseño de páginas web Capas. Objetos en movimiento Ricardo Esteban Alonso Creación de capas en la página web Las capas son rectángulos transparentes, donde podemos insertar datos y hacer que éstos aparezcan

Más detalles

Manual de Procedimiento

Manual de Procedimiento Manual de Procedimiento INSTALACION DEL PROGRAMA Este manual pretende ser una ayuda para el usuario, indicando cada uno de los pasos a seguir en su utilización. REQUERIMIENTOS: 1. Windows 98 o superior.

Más detalles

INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER

INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER 1 INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER Manual del Alumno ASIGNATURA: VISUAL C++ PROGRAMA: S3C Lima-Perú 2 INDICE Nro. Pag 1. INTRODUCCIÓN - QUE ES VISUAL C++?... 6 2. CONCEPTOS PRELIMINARES...

Más detalles

Windows Journal en dos patadas

Windows Journal en dos patadas Windows Journal en dos patadas Con el Windows Journal se pueden hacer muchas cosas, pero aquí vamos a aprender unas pocas: Conocer la interfaz y las herramientas. Escribir a mano (y borrar) en una nota

Más detalles

3_formato I. NOTA: al pegar unas celdas sobre otras no vacías, se borrará el contenido de estas últimas.

3_formato I. NOTA: al pegar unas celdas sobre otras no vacías, se borrará el contenido de estas últimas. 3. Luego se seleccionan las celdas donde se quiere que se sitúen las celdas cortadas. No hace falta seleccionar el rango completo sobre el que se va a pegar, ya que si se selecciona una única celda, Calc

Más detalles

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation.

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. WINDOWS Windows, Es un Sistema Operativo. Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. Dentro de los tipos de Software es un tipo de software de Sistemas. Windows

Más detalles

El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto:

El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto: Plantilla de texto plano El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto: Título: Es el título que aparecerá identificando

Más detalles

PS.Vending Almacén Pocket PC

PS.Vending Almacén Pocket PC Versión 1.0 Enero 2013 Autor: Pedro Naranjo Rodríguez www.psvending.es Contenido Qué es PS.Vending Almacén Pocket PC?... 3 Funciona PS.Vending Almacén Pocket PC independiente de PS.Vending?... 3 Requisitos...

Más detalles

Uso de Visual C++ Pre-Practica No. 3

Uso de Visual C++ Pre-Practica No. 3 Pre-Practica No. 3 Uso de Visual C++ Microsoft Visual C++ 2010 es una versión de Visual Studio específica para el lenguaje de programación C++. Es un entorno de desarrollo muy completo y profesional. Por

Más detalles

Tutorial PowerPoint. Crear una nueva presentación

Tutorial PowerPoint. Crear una nueva presentación Tutorial PowerPoint La herramienta PowerPoint esta diseñada para realizar presentaciones multimedia, esta disponible en sistema Windows y MacOS. PowerPoint no solo esta pensado para realizar presentaciones

Más detalles

Retrospect 10 para Mac Anexo de la Guía del usuario

Retrospect 10 para Mac Anexo de la Guía del usuario Retrospect 10 para Mac Anexo de la Guía del usuario 2 Retrospect 10 Anexo de la Guía de usuario www.retrospect.com 2012 Retrospect Inc. Todos los derechos reservados. Anexo de la Guía del usuario de Retrospect

Más detalles

F O R M U L A R I O S FORMULARIOS

F O R M U L A R I O S FORMULARIOS F O R M U L A R I O S FORMULARIOS Los controles de formulario nos ayudan a hacer más ágil y sencillo el manejo de una hoja de cálculo. Estos controles nos permiten conseguir que el aspecto visual de la

Más detalles

UNIVERSIDAD DE MEDELLÍN NUEVO PORTAL WEB MANUAL DE USUARIO GESTOR DE CONTENIDOS

UNIVERSIDAD DE MEDELLÍN NUEVO PORTAL WEB MANUAL DE USUARIO GESTOR DE CONTENIDOS UNIVERSIDAD DE MEDELLÍN MANUAL DE USUARIO GESTOR DE CONTENIDOS NUEVO PORTAL WEB TABLA DE CONTENIDO Tabla de Contenido 2 Consideraciones Iniciales 3 Ingreso al Sistema 4 Opciones de Gestor de contenidos

Más detalles

INDICE Parte I: Qué es Visual Foxpro Capitulo 1: Características del Producto

INDICE Parte I: Qué es Visual Foxpro Capitulo 1: Características del Producto INDICE Agradecimientos 5 Sobre el Autor 6 Introducción 7 Índice 9 Parte I: Qué es Visual Foxpro Capitulo 1: Características del Producto 19 El Administrador de proyectos 21 Creación de un proyecto 27 Personalización

Más detalles

UNIDAD DIDÁCTICA Nº 7 USO DE LOS RECURSOS EN MOODLE

UNIDAD DIDÁCTICA Nº 7 USO DE LOS RECURSOS EN MOODLE PROGRAMA: TUTORÍA VIRTUAL EN AMBIENTES DE APRENDIZAJE UNIDAD DIDÁCTICA Nº 7 USO DE LOS RECURSOS EN MOODLE 1 USO DE LOS RECURSOS EN MOODLE 1. Tipos de Recursos 2. Editar Páginas de Texto o Web 3. Enlazar

Más detalles

Informes. 3. Elija la opción Nuevo (en la parte superior de la ventana) 4. Elija Autoinformes: en tablas y luego la tabla o consulta que se usará.

Informes. 3. Elija la opción Nuevo (en la parte superior de la ventana) 4. Elija Autoinformes: en tablas y luego la tabla o consulta que se usará. Informes Se pueden imprimir fácilmente los registros en una tabla o el resultado de un filtro simplemente usando el botón de Impresora de la barra de herramientas, o la opción Archivo / Imprimir. Sin embargo,

Más detalles

Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes:

Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes: Descripción del ambiente de trabajo Entrar y salir de la aplicación Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes: A través del botón :

Más detalles

Guía rápida de CX-Programmer

Guía rápida de CX-Programmer Guía rápida de CX-Programmer Esta guía pretende dar al lector los conocimientos más básicos para la programación de un controlador lógico secuencia en el autómata CQM1 de Omron, usando el software CX-Programmer

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

Informática Industrial. 3º ITIET. STR 1. Windows CE: Introducción a la interfase con el usuario.

Informática Industrial. 3º ITIET. STR 1. Windows CE: Introducción a la interfase con el usuario. Informática Industrial. 3º ITIET. STR 1. Windows CE: Introducción a la interfase con el usuario. En este documento tratamos los fundamentos de la interfase de usuario de Windows CE, y algunas operaciones

Más detalles

ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009)

ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009) JOOMLA! ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009) Es necesario comentar que este manual ha sido diseñado en su mayor parte por comunidadjoomla.org. Este manual es una

Más detalles

Que es Velneo vdataclient V7?

Que es Velneo vdataclient V7? Página 1 de 14 Que es Velneo vdataclient V7? Es el cliente de datos que nos permitirá de una forma remota acceder como administrador a una base de datos, observar el estado de la información e interactuar

Más detalles

10. El entorno de publicación web (Publiweb)

10. El entorno de publicación web (Publiweb) 10. El entorno de publicación web (Publiweb) 10.1. Introducción El entorno de publicación Web es una herramienta que permite la gestión de nuestras páginas Web de una forma visual. Algunos ejemplos de

Más detalles

COMBINAR CORRESPONDENCIA EN MICROSOFT WORD

COMBINAR CORRESPONDENCIA EN MICROSOFT WORD COMBINAR CORRESPONDENCIA EN MICROSOFT WORD Combinar documentos consiste en unir dos documentos diferentes sin que se modifiquen los datos que aparecen en ellos. Esta operación es muy útil y muy frecuente

Más detalles

PowerPoint 2010 Introducción a Microsoft Office PowerPoint 2010

PowerPoint 2010 Introducción a Microsoft Office PowerPoint 2010 PowerPoint 2010 Introducción a Microsoft Office PowerPoint 2010 Contenido CONTENIDO... 1 DESCRIPCIÓN DE LA VENTANA PRINCIPAL... 2 INTRODUCCIÓN A POWERPOINT WEB APP... 8 1 Descripción de la ventana principal

Más detalles

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10 CONCEPTOS BASICOS Febrero 2003 Página - 1/10 EL ESCRITORIO DE WINDOWS Se conoce como escritorio la zona habitual de trabajo con windows, cuando iniciamos windows entramos directamente dentro del escritorio,

Más detalles

CURSO DE ACCESS 2007 DESARROLLO DE APLICACIONES

CURSO DE ACCESS 2007 DESARROLLO DE APLICACIONES CURSO DE ACCESS 2007 DESARROLLO DE APLICACIONES El alumno al finalizar el curso será capaz de desarrollar aplicaciones de bases de datos de varias tablas relacionadas, generando un completo y adecuado

Más detalles

Ejercicios - Persistencia en Android: ficheros y SQLite

Ejercicios - Persistencia en Android: ficheros y SQLite Ejercicios - Persistencia en Android: ficheros y SQLite Índice 1 Uso de ficheros (0.5 puntos)...2 2 Persistencia con ficheros (0.5 puntos)...3 3 Base de datos: SQLiteOpenHelper (0.5 puntos)... 3 4 Base

Más detalles

GENERACIÓN DE ANTICIPOS DE CRÉDITO

GENERACIÓN DE ANTICIPOS DE CRÉDITO GENERACIÓN DE ANTICIPOS DE CRÉDITO 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de anticipos de crédito permite generar fácilmente órdenes para que la Caja anticipe el cobro de créditos

Más detalles

Kepler 8.0 USO DEL ERP

Kepler 8.0 USO DEL ERP Kepler 8.0 USO DEL ERP CONTENIDO 1. Introducción... 3 2. Inicio del sistema... 3 3. Pantalla inicial... 4 4. Barra de menús... 5 a) Menú archivo... 5 b) Menú edición... 6 c) Menú Ver... 6 5. Ayuda... 8

Más detalles

Al back-end o módulo de gestión de ALES II se accede desde su página principal: http://proyectos.cnice.mec.es/ales2/back

Al back-end o módulo de gestión de ALES II se accede desde su página principal: http://proyectos.cnice.mec.es/ales2/back Al back-end o módulo de gestión de ALES II se accede desde su página principal: http://proyectos.cnice.mec.es/ales2/back previa identificación, para lo que es necesario disponer de un usuario y una contraseña.

Más detalles

2_trabajar con calc I

2_trabajar con calc I Al igual que en las Tablas vistas en el procesador de texto, la interseccción de una columna y una fila se denomina Celda. Dentro de una celda, podemos encontrar diferentes tipos de datos: textos, números,

Más detalles

MANUAL DE LA APLICACIÓN HELP DESK

MANUAL DE LA APLICACIÓN HELP DESK CASAMOTOR MANUAL DE LA APLICACIÓN HELP DESK Desarrollado por: NOVIEMBRE, 2012 BOGOTÁ D.C. - COLOMBIA INTRODUCCIÓN Este documento es el manual de la aplicación de Help Desk de Casamotor, producto desarrollado

Más detalles

INSTALACIÓN DE MEDPRO

INSTALACIÓN DE MEDPRO 1 Estimado Cliente: Uno de los objetivos que nos hemos marcado con nuestra nueva plataforma de gestión, es que un cliente pueda instalar MedPro y realizar su puesta en marcha de forma autónoma. Siga paso

Más detalles

Word XP (Continuación) Salto de página vs. Salto de Sección

Word XP (Continuación) Salto de página vs. Salto de Sección Word XP (Continuación) Salto de página vs. Salto de Sección 1 Salto. Salto de página Cuando se llena una página con texto o gráficos, Microsoft Word inserta un salto de página automático y comienza una

Más detalles

NORMA 34.14(SEPA) 05/11/2013

NORMA 34.14(SEPA) 05/11/2013 NORMA 34.14(SEPA) 05/11/2013 1. Descripción La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que se efectúe el pago de transferencias a los beneficiarios

Más detalles

Mando a distancia. Manual en español. Última actualización: 01.10.04

Mando a distancia. Manual en español. Última actualización: 01.10.04 Mando a distancia Manual en español Última actualización: 01.10.04 Contenido El editor del control remoto... 3 Instalación... 3 El menú... 4 Los conjuntos de órdenes... 5 1. Seleccionar una aplicación...

Más detalles

Diseño de formularios

Diseño de formularios Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Diseño de formularios Introducción a las bases de datos Tema 5 El aspecto de los formularios Se puede modificar a voluntad el aspecto

Más detalles

Herramientas CONTENIDOS. MiAulario

Herramientas CONTENIDOS. MiAulario Herramientas CONTENIDOS MiAulario CONTENIDOS Qué es Contenidos Ver un ejemplo Añadir la herramienta al sitio Añadir contenido en la página Páginas principales / subpáginas Criterios de visibilidad Configuración

Más detalles

Tema: CREACIÓN DE CONSULTAS E INFORMES EN UNA BASE DE DATOS CON MICROSOFT ACCESS 2013.

Tema: CREACIÓN DE CONSULTAS E INFORMES EN UNA BASE DE DATOS CON MICROSOFT ACCESS 2013. Empremática, Guía12 1 Facultad: Ingeniería Escuela: Computación Asignatura: Empremática Tema: CREACIÓN DE CONSULTAS E INFORMES EN UNA BASE DE DATOS CON MICROSOFT ACCESS 2013. Objetivos: Identificar las

Más detalles

Tareas básicas en OneNote 2010 Corresponde a: Microsoft Office OneNote 2010

Tareas básicas en OneNote 2010 Corresponde a: Microsoft Office OneNote 2010 areas básicas en OneNote 2010 - OneNote - Office.com http://office.microsoft.com/es-ar/onenote-help/tareas-basicas-en-onenote... 1 de 3 23/04/2012 10:40 p.m. Soporte / OneNote / Ayuda y procedimientos

Más detalles