Se han encontrado 2654 coincidencias. | << >> |
C/Visual C |
Pregunta: | 5164 - PUNTEROS A FUNCIONES EN VISUAL C++ |
Autor: | luis |
Agradecer铆a de antemano cualquier tipo de ayuda. PROBLEMA: 驴Como se pasa un puntero a una funci贸n entre clases diferentes? CASO A RESOLVER: He derivado una clase de CButton ("CMiBoton") declarando en el fichero de cabecera ("MiBoton.h") un puntero a una funci贸n "gen茅rica" ("void (Pulsar*)()"). Es decir: // MiBoton.h class CMiBoton : public CButton { ... void (Pulsar*)(); ... afx_msg void OnClick(); } // MiBoton.cpp void CMiBoton::OnClick() { (*Pulsar)(); } La implementaci贸n de esta funci贸n ("Pulsar") se lleva a cabo en la ventana padre que contiene dicho bot贸n ("CMiVentana") derivada de CDialog. Es decir: // MiVentana.h #include "MiBoton.h" class CMiVentana : public CDialog { CMiBoton boton1; CMiBoton boton2; ... void Pulsar1(); void Pulsar2(); } // MiVentana.cpp void CMiVentana::Pulsar1() { MessageBox("Puls贸 bot贸n 1"); } void CMiVentana::Pulsar2() { MessageBox("Puls贸 bot贸n 2"); } A RESOLVER: 驴C贸mo hago para desde la ventana padre ("CMiVentana") en "OnInitDialog" asignar a cada bot贸n miembro su funci贸n correspondiente? Es decir, cuando pulse "bot贸n1" ha de visualizarse "Puls贸 bot贸n 1" y lo mismo con bot贸n 2, "Puls贸 bot贸n 2". RESUMIENDO: QUIERO IMPLEMENTAR DICHO CODIGO DESDE LA VENTANA PADRE 隆隆隆OBLIGATORIAMENTE!!! 驴COMO LO HAGO? Gracias por llegar hasta este punto de lectura y por cualquier suge |
Respuesta: | Antonio Campos |
La primera idea que se me ocurre, es que implementes un constructor en la clase CMiBoton que tenga por parametro un puntero a funcion, y luego al construir los objetos en la clase CMiVentana llamar a este constructor pasandole la direccion de la funcion correspondiente.
En cuanto a codigo creo que podria ser algo asi: CMiBoton::CMiBoton(void (pf*)()) { Pulsar = pf; } //------------------------ class CMiVentana : public CDialog { void Pulsar1(); void Pulsar2(); ... CMiBoton boton1(Pulsar1); CMiBoton boton2(Pulsar2); ... } |
Pregunta: | 5170 - LIBROS DE VISUAL C++ 4.0 O 4.2 |
Autor: | Juan Torres |
Necesito nombres y editoriales, isbn, ... de libros de Visual C++ 4.0, 4.2 o similar |
Respuesta: | Oscar D. Garc铆a Herrera |
Conoc铆 cuando trabajaba en la versi贸n 4.0 de Microsoft Visual C++ un libro muy bueno, el cual no supone experiencia previa en c++ y es muy completo:
Los datos son los siguientes: Web Page: www.prentice.com.mx T铆tulo: La Esencia de Visual C++ 4.0 Autor: Mickey Williams Editorial: Prentice-Hall Hispanoamericana S.A. Traducido el Ingl茅s de la obra: Essential Visual C++ 4 Traducci贸n: I.Q. Sergio Luis Mar铆a Ruiz Faud贸n Ingeniero Qu铆mico, Analista de Sistemas Espero te sirva... Suerte...!!! |
Pregunta: | 5239 - UNIR APLICACIONES DE LOS DIFERENTES VISUAL |
Autor: | Darwing Rolando Vera Gutierrez |
驴C贸mo se puede unir programas creados en Visual C con otros creados en Visual Fox o Visual Basic? Para que pueda trabajar todos en un solo programa ejecutable, claro con sus librerias necesarias. |
Respuesta: | Jose :-) |
Puedes hacerlo de varias maneras, si lo que quieres es que desde tu aplicacion en Visual C llame a otro porgrama, el que sea, puedes utilizar este codigo que hay en esta pagina:
http://codeguru.earthweb.com/system/runProcess.html con esto podras llamar a cualquier programa, sea cual sea su lenguaje de origen. Si buscas algo menos cutre, puedes hacer que tus programas en Visual Basic, (en VFox, no tengo ni idea si esto se puede hacer) es hacer ActiveX de tus programas, y desde Visual C llamar este ActiveX. Esto ya es mas complicado. Espero que te sea de ayuda. Si hay alguien que conozca otra forma que lo diga, que a mi tambien me interesa. Un saludo a todos. |
Pregunta: | 5281 - COMO INCRUSTO C脫DIGO DE JAVA EN VISUAL C++? |
Autor: | Yavir Robles |
Hola, me gustar铆a saber como puedo hacer para incrustar en un programa hecho en Visual C un fragmento de c贸digo de Java. Muchas gracias espero su respuesta lo antes posible porque la verdad me Urge bastante. Gracias. |
Respuesta: | marco arias |
Lo que puedes hacer es insertar codigo nativo (c/c++) en Java mediante JNI pero no viceversa. |
Pregunta: | 5375 - CSCROLLVIEW |
Autor: | Miguel 脕ngel 脕lvarez |
Tengo una aplicaci贸n en la que la vista est谩 derivada de CScrollView. Utilizo la vista par ir sacando mensajes a medida que se realizan las operaciones del programa, pero el problema est谩 en que aunque la barra de desplazamiento s铆 tiene el tama帽o adecuado, por defecto siempre visualizo los primeros mensajes, cuando ser铆a m谩s interesante ver los 煤ltimos. Es decir, lo que me interesar铆a, es que sin necesidad de pulsar en la barra de desplazamiento, se viesen los 煤ltimos mensajes, y para ver los primeros el usuario deber铆a pulsar en la barra de desplazamiento (y no al rev茅s como pasa ahora). Agradecer铆a mucha la ayuda. Miguel 脕ngel |
Respuesta: | Jaime Olivares |
Me parece que CScrollView no es tu mejor opci贸n para presentar mensajes. Si utilizas CEdit o CListCtrl puedes agregar los textos con facilidad y aprovechar las funciones de visualizacion de lineas especificas, como EnsureVisible(), que deberas llamar cada vez que aumentas una linea para asegurar la visibilidad de la recientemente agregada.
No te preocupes de la barra de scroll, que ambos controles las manejan autom谩ticamente. Particularmente te recomiendo el CListCtrl (o CListView), ya que en su modalidad Report te permite presentar cada linea con varias columnas para formatear, por ejemplo, fecha/hora del suceso, tipo de suceso, descripcion del suceso, etc. |
Pregunta: | 5379 - CAPTURAR PTO. PARALELO EN C++(NO VISUAL) |
Autor: | Manolo Rodriguez Perez |
Problema: Tengo un programa de gestion en el trabajo bajo msdos, los listados que saca los hace en formato 80 columnas, por lo que la impresora debe tener la opcion de condensar ya que si no las columnas de los listados salen corridas. Esto, las modernas impresoras no lo hacen ni por soft ni por hard. Por lo que como podria en c++ capturar lo que manda imprimir el dichoso programa a un archivo para luego con el word o con lo que sea poder listarlo correctamente. Gracias. si se os ocurre alguna cosa por favor contestar, aunque no sea pro programacion. |
Respuesta: | Jose Gallego |
Capturar un puerto de impresi贸n es realmente un trabajo duro.
Yo te aconsejo que instales el soft DOS2USB o alguno similar, que lo que hace es capturar el puerto LPT y enviarlos al puerto USB para sacar la imrpesi贸n directamente por una impresora moderna. Si mal no recuerdo tenia la opci贸n de impresi贸n condensada. En programaci贸n, la orden para imprimir condensado / expandido, salto de linea, etc. se hacia con comando CHR. Este programa detecta esos comandos y actua en consecuencia por lo que es probable que te funcione sin tener que parametrizarlo demasiado. |
Respuesta: | Pedro Miguel Gonz谩lez |
Hola Manolo, no dices si trabajas en entorno windows o no (aunque el programa sea en ms-dos). Si es as铆, puede probar a instalar la impresora gen茅rica que viene con windows Panel de control->Impresoras->Agregar Impresora y configurarla como predeterminada. Esta impresora tiene la propiedad de que s贸lo funciona con texto, descartando los formatos y tipos de letra, con lo que el espaciado de los caracteres es proporcional y todas las columans quedan del mismo tama帽o. Se suele usar mucho para las impresoras de ticket.
El inconveniente es que no funciona con todas las impresoras, sobre todo con las tipo GUI como la OKI 6W/8W. Espero haberte ayudado. Un saludo |
Pregunta: | 5628 - VECTOR DE N DIMENSIONES CON C++ |
Autor: | Eduardo Higuera |
saludos amigos:
Estoy aprendiendo c++ y necesito una explicacion: como hago un vector de n dimensiones en c++ ???usando los operadores new y delete implementando una clase vector. como defino la cabecera de esta clase teniendo en cuenta el constructor basico, de copia,operador sobrecargado de suma ? se debe introducir 2 vectores de n dimensiones y sumarlos. una variable seria la dimension del vector y otra los componentes del vector, como hago para introducir los componentes? gracias por su colaboracion Eduardo |
Respuesta: | German |
Hola Eduardo,espero poder ayudarte con tu pregunta.La clase vector podria ser implementada con una lista o con un arreglo.
Perdon por el ejemplo pero no recuerdo muy bien la sintaxis de C++.De todas formas sirve. Suerte.. MAXIMO_VALOR=1024 class Vector { private: elemento* Axis; // arreglo unsigned int cant; public: Vector ( ) { Axis=new elemento[cant=MAXIMO_VALOR]; } Vector(int DIM){ Axis=new elemento[cant=DIM ]; } // Sobrecarga del operador suma Vector operator +(Vector OTRO){ // suponiendo igual dimension para ambos Vector Resultado=new Vector(cant); for(int i=0,i<cant,i++){ Resultado[i]=Axis[i]+OTRO[i]; } } // Sobrecarga del operador [] elemento operator[](int pos){ return Axis[pos]; } // Sobrecarga del operador de insercion >> Vector friend operator>>(instream& in,Vector V){ for(int i=0,i<cant,i++){ in>>V.Axis[i]; } return V; } } |
Pregunta: | 5763 - CLASE COLEDATETIME EN VISUAL C++ 6.0 |
Autor: | Carlos Corbalan Rubio |
Estoy trabajando sobre Windows NT 4.0 (con service pack 4) con Visual C++ 6.0.
Al utilizar la funci贸n GetCurrentTime de la clase COleDateTime, que devuelve la fecha del sistema, se produce un error de ejecuci贸n seg煤n la m谩quina en que se ejecuta la aplicaci贸n. Las dos m谩quinas son id茅nticas y he comprobado las librer铆as din谩micas que internvienen (creo que son comctl32.dll, kernel32.dll) y son las mismas. La DLL kernel32.dll contiene la funci贸n GetSystemDate que es la que realmente recupera la fecha del sistema. Alguien conoce cu谩l puede ser la causa para que en un ordenador la aplicaci贸n funcione sin problemas y en el otro no ? Muchas gracias |
Respuesta: | Melchor Viso Martinez |
Puede deberse al formato de fecha en el Panel de Control, al soporte idiom谩tico de los equipos y a lo bien programadas que est谩n algunas
de las funciones de las MFC (desarrollos abandonados, variables perdidas, etc). Existen funciones de la librer铆a standard de C <sys\time>, <time.h> y <timeb.h> (creo recordar que estos eran los nombres) que funcionan bien. En una aplicacion tuve problemas del estilo y los que hice fue capturar la hora mediante estas funciones y convertirla con alguno de los miembros de COleDateTime Espero que sirva de algo. |
Pregunta: | 5887 - 400.000 REGISTROS!!! |
Autor: | Luis |
Hola, programo en Visual C++.
Problema : Necesito mostrar en un control 'CListCtrl' 400.000 registros. No quiero utilizar los ActiveX ADO (DBGrid) puesto que accedo a los datos de la tabla directamente (no mediante ODBC). Lo que quiero es derivar la clase MFC 'CListCtrl' (p.e. 'CMiGrid'). A resolver : El problema es que obviamente no puedo cargar los 400.000 registros de golpe (lento y memoria), pero el control deber铆a visualizar al menos los que quepan en el 谩rea del cliente y, esto es lo importante, MOSTRAR LA SCROLLBAR VERTICAL COMO SI REALMENTE EXISTIERAN LOS 400.000 E INTERACTUAR CON ELLA, ES DECIR, SI PULSO UNO DE LOS BOTONES DE DESPLAZAMIENTO ME DESPLAZO UN REGISTRO (ARRIBA O ABAJO) EN LA TABLA Y LO CARGO EN LISTA, SI ARRASTRO EL CURSOR DE LA BARRA AVANZO X REGISTROS EN LA TABLA Y CARGO A PARTIR DE AH脥 EN LA LISTA, ETC... ES "SIMULAR" QUE ESTAN TODOS LOS REGISTROS CARGADOS AUNQUE REALMENTE NO ES AS脥. 驴C贸mo lo hago? Gracias de antemano. |
Respuesta: | Carlos Christian Molina Vega |
Hola, lo que debes hacer es lo siguiente......
declarar una lista, no la vamos a llenar toda, solo unos cuantos registros. Declarar una funcion que se encargue de borrar la lista y volverla a llenar cada vez, con la cantidad de registros que se necesitan desplegar, 3 o cuatro.... por ejemplo, ademas debe de llevar un parametro con la posicion inicial de la base de datos. Dibujar un scroll vertical, al lado de la lista. Crear una variable en la clase, que mantendra el numero de registros de la tabla. Otra variable que lleva la posicion actual en el registro de base de datos. Al scroll se le inicializa la propieda min con 0, y max con la cantidad de registros -1 Al cambiar el scroll,se genera un evento, desde el cual se va a llamar la funcion con la posicion actuual del scroll. De esta forma se da la impresion de que tiene todos los datos en memoria. Para que trabaje con las teclas, solo hay que programar que cuando llegue al inicio de la lista, a la pposicion actual, le reste uno y viceversa. Si se presiona PAGE UP, se le resta la cantidad de registros que caben en la lista, etc...... Cualquier duda enviame un correo. |
Pregunta: | 6128 - CONTROL DE APLICACIONES DESDE VISUAL C++ |
Autor: | Miguel |
Desde una aplicaci贸n de Visual C++, Como puedo arrancar, parar y ver el estado
( en ejecuci贸n o reposo) de otra aplicaci贸n de windows, tambi茅n de visual c ++ |
Respuesta: | Chris Isla |
Mira, puedes hacer eso pero la depuracion te la hara en ensamblador.
Pasos1: Abre un ejecutable desde VC++ Siguetea su linea de recorrido de programa con F10 Pasos 2: Si el exe este esta usando algun DLL o componente tuyo puedes detenerlo al llamara tu componente Ir a Project Settings y en la casilla Executable for debugging session, apunta al ejecutable a detener establece tus puntos de ruptura |
|< << 15 16 17 18 19 20 21 22 23 24 25 >> >| |