• Jueves 14 de Noviembre de 2024, 18:36

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Linspire

Páginas: 1 2 3 [4] 5 6 ... 10
76
C++ Builder / Re: Ayuda Dbgrid
« en: Viernes 25 de Agosto de 2006, 19:26 »
Jaja :D , gracias amigo, estaba recordando ayer que existe esa opción :P , es que hace mucho que no tocaba mi manual de SQL, muchas gracias de todas formas.

Saludos.  :hola:  :lightsabre:  :kicking:

77
C++ Builder / Re: Error Unique Primary Key
« en: Viernes 25 de Agosto de 2006, 17:30 »
Bueno, en mi caso nunca he hecho tablas en Interbase pero supongo que puedes hacer una consulta SQL en donde busques el campo introducido en la tabla y si ya existe que le mande un mensaje.

algo así como

SELECT Nombre FROM tabla
WHERE Nombre="+campo+"

AnsiString campo=Edit1->Text;
if(Query1->SQL->Free()==true)
tabla->Post();
else ShowMessage("Este nombre ya existe");

Bueno, es solo una idea, espero pueda servirte  :kicking:  :comp:

78
C++ Builder / Ayuda Dbgrid
« en: Martes 22 de Agosto de 2006, 22:44 »
Hola a todos, alguien sabe como hacer para ordenar alfabeticamente el contenido de un DBGrid?.

De antemano gracias por las respuestas.

 :D  :angry:  :blink:

79
C++ Builder / Re: Para Windows 95
« en: Viernes 18 de Agosto de 2006, 22:03 »
En teoría si creas el ejecutable con todas las librerías debería funcionar sin problemas. En mi caso he corrido aplicaciones hechas sobre WinXP sobre Win98 y nunca he tenido problemas. Quizá pueda servirte la utilidad que trae Windows en Ejecutar para compatibilidad.

1. Seleccionas el ejecutable
2. Clic en propiedades
3. Compatibilidad
4. Selecciona ejecutar este programa en modo de compatibilidad para Windows 95.

Espero te sirva mi respuesta.  :whistling:
Saludos.  :hola:

80
C++ Builder / Re: Variable Tipo Cadena
« en: Viernes 18 de Agosto de 2006, 17:35 »
Es cierto, tienes toda la razón, lo acabo de comprobar en la Ayuda de C++Builder, creo que fue una indiscreción de mi parte no consultar antes.

Muchas gracias por aclarar mi duda.

 :D  :comp:  :whistling:

81
C++ Builder / Variable Tipo Cadena
« en: Viernes 18 de Agosto de 2006, 02:26 »
Hola a todos, alguien podría explicarme cuál es la diferencia entre una variable String y una AnsiString?, ya que he probado ambas y no parece haber diferencia.

De antemano grcias por su aportacion.

 :comp:  :D  :lightsabre:  :whistling:

82
C++ Builder / Re: Tema De Windows Xp
« en: Viernes 28 de Julio de 2006, 16:57 »
Gracias amigo, pero ya poseo ese código, y como dices, sirve solo para cambiar el fondo de escritorio. Lo que yo quiero es cambiar el Tema de Escritorio, de todas formas gracias por tu respuesta.

83
C++ Builder / Tema De Windows Xp
« en: Jueves 27 de Julio de 2006, 22:59 »
Hola a todos, de casualidad alguien sabe como cambiar el tema de escritorio de Win XP desde C++Builder.

Gracias por las respuestas.

84
C++ Builder / Re: Crear .dll
« en: Martes 30 de Mayo de 2006, 00:46 »
Gracias my friend, lo pondré a prueba cuando tenga más tiempo libre porque estoy en fin de semestre y tengo mucho trabajo, ya comentaré los resultados.


Gracias nuevamente.

Saludos.  :comp:  :hola:  :whistling:

85
C++ Builder / Re: Recorrer Tabla
« en: Domingo 28 de Mayo de 2006, 20:14 »
Espero no haber llegado tarde para responderte.

La razón de que solo te lo haga en una fila (creo que eso dijiste) es porque solo le estás diciendo (ejemplo)

 importe=qrApuntes->FieldByName("importe")->AsFloat;

En este caso solo está haciendo el cálculo para la fila seleccionada, y así lo irá haciendo si recorres manualmente la tabla.

Para que te lo haga todo debes recorrer la tabla con un ciclo for, ya se que recorras solo los renglones o las columnas, o si es necessario recorrer ambas pues utiliza un ciclo for doble. Sic.

Espero te sirva y me hayas entendido.


Saludos. :hola:  :smartass:  :whistling:  :comp:  :lightsabre:

86
C++ Builder / Re: Stringgrid Celdas Vacias.
« en: Domingo 28 de Mayo de 2006, 17:42 »
Bueno, supongo que primero tienes que recorrer el StringGrid con un for doble, algo así como.

int i,j;

for(i=1;i<=StringGrid1->ColCount;i++)
{
for(j=1;j<=StringGrid1->RowCount;i++)
{
if(StringGrid1[j]=" ") //Aquí es donde localizas una celda vacía
StringGrid1[j]="0"; //Sustituyes la celda vacía por el valor que quieras naturalmente esto no afacta a las demás.
else break;
}
}

O también pódrias declarar una variable AnsiString;
ejemplo.

AnsiString celda;

celda=StringGrid1[j];
Y se pondría así:

if(celda.IsEmpty()==true) en lugar de if(StringGrid1[j]=" ")

Bueno, eso es solo una idea para que te guies, escribí el código sin probarlo, espero que te sea de utilidad.

Suerte y saludos.  :D  &lt;_&lt;  :blink:  :whistling:

87
C++ Builder / Re: Query
« en: Viernes 19 de Mayo de 2006, 18:35 »
Eso se resvuelve muy facilmente.

Solo escribe:

Table1->Next(); //Para ir al siguiente registro.
Table1->Prior(); //Para el registro anterior
Table1->First(); //Para el primer registro
Table1->Last(); //Para ir al último registro.

Así de simple.

Saludos! novato.. &lt;_&lt;  :D  :smartass:  :whistling:  :comp:

88
C++ Builder / Re: ¿como Limpiar Una Imagen Del Componete Image1?
« en: Jueves 18 de Mayo de 2006, 02:51 »
Pues bien, ya lo probé y funciona perfectamente, supongo que no hay otra solución mejor.

Y pór cierto muy gracioso comentario.

Saludos!... :hola:

89
C++ Builder / Re: ¿como Limpiar Una Imagen Del Componete Image1?
« en: Martes 16 de Mayo de 2006, 22:03 »
:D Uff, pues me costó un poco encontrarlo pero creo que esto puede servirte.

Puedes hacer:

Image1->Hide();

o también

Image1->Free(); //Si no me equivoco con esto se destruye la imagen.

Espero sea lo que querías. Saludos!.. :comp:  :hola:  :lightsabre:

90
C++ Builder / Re: Crear .dll
« en: Martes 16 de Mayo de 2006, 21:37 »
Pues bien mi amigo, creo que entendiste mal, lo que yo quiero es Crear una DLL, no llamarla, que creo que es lo que tu me estás indicando.

Saludos. :comp:

91
C++ Builder / Crear .dll
« en: Lunes 15 de Mayo de 2006, 23:22 »
Hola a todos, resulta que estuve buscando y no pude hallar gran cosa sobre como crear una .DLL en C++Builder 5, así que me gustaría que me orientaran hacía alguna o algunas fuentes de información al respecto. Les agradezco de antemano :comp:

Y como nota adicional, tengo que ser sometido a una nueva cirugía pero mis recursos casi se agotaron con la cirugía de hace casi un mes, alguien podría darme una idea para conseguir $1000.00 (USD 100.00 aprox,  100.00 euros aproximadamente) y completar el precio de la intervención?. Les agradeceré infinitamente sus propuestas ya que es de vital importancia para mi salud presente y futura.

Gracias. :hola:  y Saludos.

92
C++ Builder / Re: Anclar Un Form A Una Esquina
« en: Domingo 14 de Mayo de 2006, 20:23 »
:P Jaja, gracias por el halago, y te seré sincero, en realidad no uso ningún programa en especial, solo el MSPaint, por ejemplo la imagen que adjunto simplemente la copié de esta pagina, borré los bordes y listo, puedes sustitir el texto "OK" por el que desees, lo cargas en un SpeedButton o en BitBtn y listo. La desventaja del SpeedButton es que no puede usarse la propiedad Default porque no existe, aunque ese problema puede solucionarse facilmente programano el evento OnkeyPress si se esta usando un Edit.

Y pues si te refieres a los iconos pues tengo una colección de miles de ellos que tal vez puedan servirte, solo tienes que darme tu correo y te los envío.

Saludos!.. :lightsabre:  :hola:  :whistling:  :comp:

PD. Podrías decirme que demonios significa la expresión 'xD'?, ya que supongo que la D es una sonrisa pero no logro deducir que es la x. Gracias.

93
C++ Builder / Re: Anclar Un Form A Una Esquina
« en: Domingo 14 de Mayo de 2006, 18:43 »
Si pones una imagen (.bmp) en un BitBtn se vería más o menos como en este post de un problema que tuve hace tiempo (El BitBtn es donde dice Buscar?).

Clic aquí

Saludos nuevamente.

94
C++ Builder / Re: Anclar Un Form A Una Esquina
« en: Domingo 14 de Mayo de 2006, 18:39 »
Bueno, my friend, en realidad yo también copié  :whistling:  ese código y desconozco totalmente quien lo haya escrito(pues yo apenas soy un principiante) pero muchisimas gracias a quien lo haya hecho. Con respecto a los botones y a toda la apariencia dejáme decirte que yo también tengo algo de perfeccionista en ese sentido, lo cual cosidero una de mis cualidades (sic).

Y pues ahora, supongo que te refieres a esos botones azules que tienen la apariencia del navegador Safari de MAC, simplemente son imagenes .bmp cargadas en un SpeedButton y con la propiedad Flat a true, eso de da un toque más artistico, también podrías cargar un .bmp en un BitBtn sin poner algo en la propiedad caption, en lugar de eso escribe el texto en la imagen.

De esta forma puedes personalizar más tu aplicación. Ah, y en efecto, lo que se ve ahí es un ComboBox con una imagen en la parte de atras, es la misma imagen del Skin, y la propiedad Style=csSimple.

Espero te sirva.

Saludos!.. :D  :comp:  :lightsabre:  :whistling:

95
C++ Builder / Re: Edits Para Ingresar Contraseña
« en: Domingo 14 de Mayo de 2006, 17:24 »
Eso es sencillo, se resuelve en la propiedad PasswordChar del Edit, ahí escribes el signo que quieres que aparezca, incluso si no quieres que aparezca simbolo alguno puedes escribir ALT+0160 de esta forma los caracteres serán invisibles al usuario.


Saludos!.. :lightsabre:  :hola:  :comp:

96
C++ Builder / Ayuda Con Alias
« en: Sábado 13 de Mayo de 2006, 23:16 »
Bueno amigos, como ustedes sabrán, una consulta SQL puede hacerse sobre una tabla que exista en una base de datos (Alias) o en un directorio.

Por ejemplo.

SELECT * FROM tabla1 /*Aquí hacemos la consulta sin decirle al editor en donde está la tabla porque antes le hemos asignado el nombre del Alias*/

SELECT * FROM 'C:\Paradox\tabla1.DB' /*En este caso le estamos diciendo al editor exactamente donde está ubicada la tabla*/

Pues bien, me gustaría saber cuales son las ventajas y desventajas entre ambos ejemplos ya que no es muy practico llegar a otra PC, crear el Alias si no existe y copiar todas las tablas.

Espero puedan resolver mis dudas.

De antemano gracias. Saludos!. :angry:  :lightsabre:  :kicking:  :whistling:

97
C++ Builder / Re: Count
« en: Sábado 13 de Mayo de 2006, 17:22 »
Bueno, creo que si buscaras un poco hallarías la respuesta, checa este enlace de un problema que tuve hace tiempo, creo que puede servirte.

http://foros.solocodigo.com/index.php?showtopic=15052

Por cierto, si no mal recuerdo utilice un DBLabel para mostrar los resultados, bueno supongo que no es gran problema.

Suerte!.. :unsure:  :lightsabre:  :comp:  :whistling:

98
C++ Builder / Re: Anclar Un Form A Una Esquina
« en: Viernes 12 de Mayo de 2006, 17:07 »
Pues que bien que te interese, ahí tienes la solución.

Esto es lo que debes poner al inicio del .cpp

//---------------------------------------------------------------------------

#include <vcl.h>
#include <Clipbrd.hpp>
#pragma hdrstop
#include<ComObj.hpp>
#include<ole2.h>
#include<richole.h>
#include <memory>    //Debes incluir esta cabecera.

#include "Project.h"
#include "aboutus.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Word_2K_SRVR"
#pragma resource "*.dfm"
Tmain *main;

//Aquí inicia.

void BitmapToRgn(TForm *form, TImage *img)
{
   form->BorderStyle = bsNone;

   Graphics::TBitmap *bmp =
       dynamic_cast< Graphics::TBitmap* >( img->Picture->Bitmap );

   form->SetBounds( form->Left, form->Top, bmp->Width, bmp->Height );
   img->SetBounds( 0, 0, bmp->Width, bmp->Height );
   form->Brush->Bitmap = bmp;

   int tamanyoImagen = bmp->Width * bmp->Height * 4;
   std::auto_ptr< BITMAPINFO > lpbmi( new BITMAPINFO );
   std::auto_ptr< BYTE > bits( new BYTE[tamanyoImagen] );

   ZeroMemory( lpbmi.get(), sizeof(BITMAPINFO) );
   lpbmi->bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
   lpbmi->bmiHeader.biWidth = bmp->Width;
   lpbmi->bmiHeader.biHeight = bmp->Height;
   lpbmi->bmiHeader.biPlanes = 1;
   lpbmi->bmiHeader.biBitCount = 32;
   lpbmi->bmiHeader.biCompression = BI_RGB;
   lpbmi->bmiHeader.biSizeImage = tamanyoImagen;

   GetDIBits( bmp->Canvas->Handle, bmp->Handle, 0, bmp->Height,
       bits.get(), lpbmi.get(), DIB_RGB_COLORS );

   DWORD colorTransparente = reinterpret_cast<DWORD*>
       ( bits.get() )[ bmp->Width * (bmp->Height-1) ];

   HRGN rgn = CreateRectRgn( 0, 0, form->Width, form->Height );
   HRGN rgnTemp = CreateRectRgn( 0, 0, form->Width, form->Height );
   CombineRgn( rgn, rgn, rgnTemp, RGN_DIFF );
   DeleteObject( rgnTemp );
   for (int y=0; y < bmp->Height; ++y)
   {
       DWORD *pixel = &reinterpret_cast<DWORD*>
           ( bits.get() )[ bmp->Width * (bmp->Height - 1 - y) ];
       int ancho = 0;

       for (int x=0; x <= bmp->Width; ++x)
       {
           if ( x != bmp->Width && pixel
  • != colorTransparente )

               ancho++;
           else
               if ( ancho > 0 )
               {
                   rgnTemp = CreateRectRgn( x - ancho, y, x, y + 1 );
                   CombineRgn( rgn, rgn, rgnTemp, RGN_OR );
                   DeleteObject( rgnTemp );
                   ancho = 0;
               }
       }
   }
   SetWindowRgn( form->Handle, rgn, true );
   DeleteObject( rgn );
}

//Aquí termina.

Despues esto.

//---------------------------------------------------------------------------
__fastcall Tmain::Tmain(TComponent* Owner)
        : TForm(Owner)
{
        BitmapToRgn( this, Image1 );  //Escribe esto
}
//---------------------------------------------------------------------------


Y si quieres que el form se pueda mover arrastrando la imagen, entonces pon:

if ( mbLeft == Button )
        {
        ReleaseCapture();
        Perform( WM_SYSCOMMAND, 0xF012, 0 );
        }

En el evento OnMouseDown de la imagen.


Pues así de sencillo, solo debes cargar una imágen con una determinada forma en el form, ah, el formato de la imagen debe ser .bmp y debe tener un marco minimo de 1px de grueso del color que no quieres que se vea, ya que este código hace invisible el color de las esquinas de la imágen por ello debe existir ese marco para que esto pueda llevarse a cabo (espero me hayan entendido).

Una vez que hayas hecho esto tu form se verá más o menos así (bueno, eso depende de la imagen que utilices), este es un ejmplo de un programa que estoy desarrollando.



Clik aquí para ver como se ve sobre el escritorio de Windows XP

Si tienes alguna duda no dudes en preguntar.

Suerte!... :hola:  :smartass:  :lightsabre:

99
C++ Builder / Re: Anclar Un Form A Una Esquina
« en: Jueves 11 de Mayo de 2006, 21:10 »
Dado que no quieres que la aplicación visual no sea modificado en ningún modo quizás te sirva poner una imágen como Skin, de esa forma el formulario siempre tomará la forma de la imágen y podrás situarla en la parte que tu quieras. Si te interesa responde a este mensaje y te digo como.

Saludos!.. :hola:  :lightsabre:

100
C++ Builder / Re: Limitar Teclas En Edits.
« en: Jueves 11 de Mayo de 2006, 17:23 »
Que bueno que te haya servido, y me parece excelente la aportación de Viktor, realmente no había puesto mucha atención a esta cuestión pero me agrada que se haya resuelto satisfactoriamente.

Si en algo más puedo ayudarte no dudes en preguntar.

Saludos!.. :D  :lightsabre:  :hola:  :comp:

Páginas: 1 2 3 [4] 5 6 ... 10