Estoy empezando de cero una aplicacion que con D7 ya funcionaba bien. Para no empezar con los lios de warnings y errores de cadenas la estoy empezando por completo con d2009 (jaja tampoco soy masoquista: copiar y pegar y evito muchas advertencias que si solo abro el .pas en la version nueva) Ya aparecieron algunas advertencias como el hecho de que pide que se cambie el codigo:
delphi
if (strTemp[i] in ['0'..'9']) then strID := strID + strTemp[i];
por algo asi CharIn.. (jeje no lo copie) pero ya se a que se refiere.
Bueno el tema es que los componentes de comunicacion serie que generalmente uso estan en una version Beta para d2009 y generan algunos problemas al momento de instalar y/o usarlos (ComPort y Apro) asi que opte por bajar la version trial de TMS Async32 para probar y tomar la desicion de comprarlo. Un pequeño problema me ha surgido ahi.
Por ejemplo para asignarle la velocidad de comunicacion se usa
delphi
VaComm.Baudrate := br38400;
br38400 es un tipo enumerado llamado TVaBaudRate que consta de 16 posiciones (0..15)
Lo que quiero hacer (era bien facil con los otros componentes) es que en un panel de la barra de estado (statusbar) se puedan escribir los ajustes que actualmente tiene el puerto VaComm. Algo asi:
delphi
COM1,38400,None,1
para esto generalmente usaba un codigo como este:
delphi
StatusBar.Panels[0].text := Format('COM%s',[IntToStr(ComPort.Port)] + ' ' + ComPort.BaudRate + ' ' + ComPort.Parity + ' ' + ComPort.StopBits;
Mi pregunta es como puedo tomar el indice de el typo enumerado por ejemplo en BaudRate del VaComm es decir algo asi:
delphi
//Considerar que Baudrate es de tipo TVaBaudRate Velocidad := IntToStr(VaComm.BaudRate); //Yo esperaria que velocidad guarde un valor entre 0 y 15 o mejor aun el nombre correspondiente a ese indice br38400
Espero haberme explicado o si no, a lo mejor ya tengo el mal del marrano!!!