Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Convertir valores de una Base de Datos a Hexadecimal (https://www.clubdelphi.com/foros/showthread.php?t=65107)

chinchan 20-11-2009 18:18:21

Convertir valores de una Base de Datos a Hexadecimal
 
Hola de nuevo. Tengo una base de datos y la veo en un DBGrid, pero quiero que me muestre una columna en concreto de ese DBGrid (cuyos registros son valores enteros) convertidos a hexadecimal. ¿Se os ocurre cómo hacerlo con sentencias SQL?. Muchas Gracias.

_cero_ 20-11-2009 22:48:00

Pues en el DBGrid existe el evento “OnDrawColumnCell” ahí puedes tomar el dato, convertirlo y después volverlo a escribir en la rejilla, como ejemplo te dejo este trozo de código que convierte un valor 1 ó 2 en la frase uno o dos respectivamente, pero solo en la columna 4 (índice 3).
Código:

void __fastcall TFom1::DBGrid1DrawColumnCell(TObject *Sender, const TRect &Rect, int DataCol,
          TColumn *Column, TGridDrawState State)
{
    if (Column->Index==3) {
        switch (QueryTabla->FieldByName("TIPO")->AsInteger) {
            case 0: {
                dgri->Canvas->TextRect(Rect, Rect.Left+2, Rect.Top+2, "Uno");
                break;
            }
            case 1: {
                dgri->Canvas->TextRect(Rect, Rect.Left+2, Rect.Top+2, "Dos");
                break;
            }
        }
    }
}

nos vemos.

chinchan 23-11-2009 19:33:46

Me vale tu solución. Muchas Gracias


La franja horaria es GMT +2. Ahora son las 05:44:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi