PREGUNTAS CONTESTADAS - C/Visual C

 Hay un total de 745 Preguntas.<<  >> 

    Pregunta:  28508 - ANIMACION DE STRING EN VISUAL C++
Autor:  Yanes Alfredo Romero acevedo
Estimula amigos

Quisiera saber si hay una alguna forma de implementar String(titulos) con animacion(parpadeen y cambien de color al tiempo) en visual c++ version 6.0.
Agradesco si poseen dicha informacion me la comuniquen lo mas pronto posible, gracias de antemano por su colaboracion...

Agradezco que su respuesta sea rapida y eficas...
Muchas Gracias...
  Respuesta:  Chacan Xxx
Hola.
Lo mas facil es que pongas una Etiqueta y un Timer y cada vez que se ejecute el evento del temporizador, le cambias la propiedad Color al texto de la etiqueta.

    Pregunta:  28680 - PUERTO PARALELO BIDIRECCIONAL
Autor:  Marco León Mora Mendez
Como reconozco un puerto bidireccional? Como leo un dato del mismo puerto? entiendo que hay que activar el bit 5 del reg. de control del puerto, pero... se debe hacer algo más? Gracias, Marco León
  Respuesta:  Armando Perez
Si no mal recuerdo, primero debes obtener la direccion del puerto, normailmente la 378h, una vez hecho esto primero lees lo que hay en el puerto mas dos (0x378+2 por que es el reg. de control) con la funcion inp y despues haces una or a nivel de bits, por ejemplo x=inp(0x378) | 0x20, despues sacas el dato de nuevo con outp, asi queda habilitado para modo bidireccional.

Si no te queda claro mandame un correo a [email protected] y te proporciono el codigo fuente

    Pregunta:  28701 - LOS FLOATS EN C++
Autor:  Rubi Corberó
Cuando trabajo con variables tipo floats y opero con ellas, aparecen susu valores "redondeados" de una forma que no consigo entender.
Por ejemplo, inicializo f = 123.123, le pido que la muestre en pantalla (printf) y me muestra 123.123001. Si la multiplico por cien, da 12312.299805.

¿Como puedo fijar la precisión a dos o tres cifras decimales, con la parte entera llegando a los millones?
  Respuesta:  ivan
facil, en printf usa en vez de %f solo, agragale los campos, por ejemplo: %6.5f te permite variables de punto flotante con por lo menos 6 caracteres en la parte entera y 5 en la decimal

    Pregunta:  28772 - APLICACIóN MULTI-LINGüE
Autor:  Iñigo
Me gustaría saber como se hace una aplicación multi-lingüe utilizando el MFC de Visual C++ 6.0.

La idea es añadir una opción más en el menú principal para que el usuario elija el idioma en el que se han de representar todos los textos de la aplicación (menú y área del usuario).

Supongo que tendrá algo que ver la “String Table” que se crea en “resources”, pero no sé cómo se puede utilizar en ejecución.

Muchas gracias.
  Respuesta:  Ruben Yusta
Efectivamente, con la tabla de strings que hay en recursos lo puedes hacer, solo tendrás que asignar el identificador del boton, del static, etc... al recurso correspondiente de la tabla:

CString auxString;

GetDlgItem( IDOK )->SetWindowText(auxString.LoadString(ID_BOTON_ACEPTAR_ENGLISH));

ó, si han seleccionado español:

GetDlgItem( IDOK )->SetWindowText(auxString.LoadString(ID_BOTON_ACEPTAR_SPANISH));

y en tu tabla de recursos tendrás:
ID_BOTON_ACEPTAR_ENGLISH = Accept

ID_BOTON_ACEPTAR_SPANISH = Aceptar

También puedes asignar con el classwizard variables de tipo CString a cada uno de los controles que contengan texto, así sólo tendrás que poner:
m_szBotonAceptar.LoadString(ID_BOTON_ACEPTAR_SPANISH);

En ambos casos, esta asignación de textos la tendrás que establecer en la función OnInitDialog().

Para los menus, y también en OnInitDialog()., primero debes obtener el menú principal:

CMenu* MenuOpe = GetMenu();

y luego:

MenuOpe->ModifyMenu(0,MF_BYPOSITION | MF_STRING, 0, auxString.LoadString(....));

MenuOpe->ModifyMenu(1,MF_BYPOSITION | MF_STRING, 1, auxString.LoadString(.....));

Si tienes submenus:

CMenu* psubMenu;
psubMenu= MenuOpe->GetSubMenu(0);

psubMenu->ModifyMenu(0,MF_BYCOMMAND | MF_STRING, 0, auxString.LoadString(.....));

psubMenu->ModifyMenu(1,MF_BYCOMMAND | MF_STRING, 1, auxString.LoadString(.....));

Espero no haberte liado demasiado. :)
Suerte!

    Pregunta:  28889 - ENVIAR UN ARCHIVO DE SONIDO POR MóDEM USANDO VISUAL C++
Autor:  Nelson Alexander Cortez García
Actualmente estoy haciendo un proyecto de la universidad y tengo que poder implementar el envío de un archivo de voz por módem. El software que estoy utilizando es Visual C++ de Visual Estudio 6. Pude implementar el código para hacer una llamada a un teléfono usando el objeto MSCOMM1 pero lo que no sé es como enviar un archivo de voz. Ya he buscado en varios sitios sobre comandos AT de módem. Pero lo único que he podido encontrar son los comandos básicos. Sería mi salvación quien me pueda ayudar con un pedazo de código en Visual C++ para poder hacer esto utilizando los comandos At de un módem.
  Respuesta:  Javier R
Hola!! Lo que te podría ayudar un poco es buscar protocolos de transferencia de archivos como el XMODEM, YMODEM y ZMODEM

    Pregunta:  29124 - COMO PREDETERMINAR EL NÚMERO DE ENTRADAS A LEER?
Autor:  Pedro Gomez
Me gustaria saber como puedo hacer para leer un dato con el gets() y que corte la lectura en cierto numero de caracteres leidos.
Muchas gracias.
  Respuesta:  k_mbe_t
He respondido eso mismo en otro foro, mirate: http://www.prehackers.com/foros/index.php?board=23;action=display;threadid=616

De todas formas te respondo

Nunca debes usar gets precisamente por eso, porque desborda el buffer donde guarda lo leido si metes más caracteres de los que permite. En su lugar usa fgets.Te pongo lo que dice el man de Linux sobre el tema :

Función gets:

char *gets(char *s);

"gets() lee una línea de stdin y la guarda en el búfer al
que apunta s hasta que se encuentre bien un carácter ter-
minador nueva-línea, bien EOF, al cual reemplaza con '\0'.
No se hace ninguna comprobación de desbordamiento del
búfer"

Función fgets:

char *fgets(char *s, int tam, FILE *flujo);

"fgets() lee como mucho uno menos de tam caracteres del
flujo y los guarda en el búfer al que apunte s. La lec-
tura se para tras un EOF o una nueva-línea. Si se lee una
nueva-línea, se guarda en el búfer. Tras el último
carácter en el búfer se guarda un '\0'.

flujo es un flujo de entrada, Si quieres que sea el teclado pones stdin, si no un descriptor de fichero de donde leer.
O sea que si quisieras leer una cadena de 10 caracteres desde teclado y guardarla en la variable char cadena[10] harías:

fgets(cadena, 10, stdin)

Y ya está.

Un saludo

    Pregunta:  29239 - COMO PUEDO INSTALAR LAS LIBRERIAS OWL EN C++ V. 3.1
Autor:  David Rodas
Estoy estudiando la manera de ingresar por medio de las librerias Owl para crear Windows y hacer un entorno visual desde un compilador borland C v3.1 pero no me reconoce muchas librerías como puedo hacer para que estas funciones ya que ni los examples me funcionan... y quisiera saber como debo hacer para poder programar asi en mi ordenador ..
Gracias y espero su ayuda...
  Respuesta:  ernesto p r
Me temo que el camino esta equivocado. la version 3.1 solo compila a 16 bits, y es incapaz de generar un programa que genere ventanas de Windows. Los compiladores de Win agregar un encabezado que es significativamente diferente al que genera un compilador de DOS como el 3.1. Los formatos de los ejecutables son diferentes.

Las OWL fueron diseñadas para Borland 4.0 (que si genera programas de Win). Usalas en el compilador correcto o de lo comtrario, aunque lograras eliminar los errores, no podras hacer que trabajen, pues el formato de las librerias (con las de 3.1) son incompatibles, y requieres las librerias de la API de Win.

Espero que te sea de ayuda el comentario.

    Pregunta:  29384 - DESBORDE DE CADENAS
Autor:  M S
Tengo el siguiente problema
Defino 2 cadenas char nombre[10] y char ape[10]
Si el ingreso lo hago con cin no controla que no pise memoria o sea al ingresar nombre si tipeo mas de 9 caracteres piso memoria
Si hago el ingreso con cin.getline y tipeo mas de 9 caracteres toma los restantes y directamente se los asigna a ape sin pedir lectura, deberia limpiar el buffer pero como lo hago sin usar flush que es de C y no de C++?. Encontre el metodo ignore del cin pero necesito saber cuantos caracteres del flujo hay que descartar. Hay otra manera de leer cadenas, evitando las consecuencias del desvorde.
  Respuesta:  Ricardo Ortega
El problema de lectura de cadenas desde el teclado existe desde el comienzo de los tiempos en todos los lenguajes.
La solución definitiva es leer en una cadena más grande
por ejemplo

char temp[256];

y luego de leer con tu función preferida

temp[10] = 0; para truncar por ejemplo a diez bytes y usar strcmp(cadena, temp) para dejar en cadena el texto leido.

fflush ayuda cuando quieres descartar todos los bytes pendientes.

    Pregunta:  29399 - GUARDAR IMAGENES EN SQL
Autor:  Juan Francisco Sanchez Alvarado
quiero guardar imagenes en SQL utilizando C++, solo se que el campo es binario BLOB
pero no tengo las instrucciones para almacenarlo ni leerlo,
me pueden decir donde puedo encontrar informacion para esto.

gracias
JFS
  Respuesta:  Rafael Hernampérez Martín
No sería más optimo tener un repositorio de archivos de imágenes y referenciarlos mediante URL? De esta manera, además de descargar peso al SGBD, puedes retutilizar imágenes sin replicar el tamaño.

    Pregunta:  29754 - VECTOR COMO PARAMETRO EN UN PROCEDIMIENTO
Autor:  walter Jesus Rodriguez cervantes
Necesito saber por favor como se manda un vector como parametro en c++ un ejemplo una explicacion
se los agradeceria
  Respuesta:  Jorge Mora Espinoza
El encabezado del método debe ir como sigue:
tipo NombredelMetodo(tipo NombredelVector[]){
...
...
}
Ejemplo:
int VectordeInts[60];

...
...

int ProcesarVector (int vector2[]){
}

// Cuando se llame el método:

int Resultado = ProcesarVector(VectordeInts);

|<  <<  46 47 48 49 50 51 52 53 54 55 56  >>  >|