• Sábado 20 de Abril de 2024, 12:37

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 ... 10
1
C++ Builder / Re: Escribr en una imagen
« en: Miércoles 20 de Agosto de 2008, 00:42 »
Me parece que esto es lo que necesitas, buena suerte!.  :lol:  :rolleyes:

Image1->Canvas->Font->Color=clWhite;
Image1->Canvas->Brush->Style=bsClear;
Image1->Canvas->TextOutA(110,360,"Universidad Autónoma Chapingo");

Image1->Picture->SaveToFile("C:\ejemplo.bmp");
ShowMessage("Archivo guardado");

2
C++ Builder / Re: Insertar Registros
« en: Viernes 30 de Mayo de 2008, 09:10 »
La verdad es que es una severa tontería lo que estás haciendo, y como ya me estoy muriendo de sueño me limitaré a colocarte un fragmento de código para insertar un registro, te recomiendo que uses el TTable en lugar de TQuery, éste último  a mi me funcionaba y después dejaba de hacerlo, en cambio el primero no me ha dado problemas.
Código: Text
  1.  
  2. void __fastcall TForm1::nuevo_registro(TStringGrid * grid, TTable * tabla)
  3. {
  4.  
  5.      String grueso, ancho, largo, def, clase;
  6.      int i,piezas,pt;
  7.      double volm3;
  8.  
  9.      tabla->TableName="inventario";
  10.      tabla->Open();
  11.  
  12.      for(i=1;i<grid->RowCount;i++)
  13.      {
  14.           grueso=grid->Cells[1][i];
  15.           ancho=grid->Cells[2][i];
  16.           largo=grid->Cells[3][i];
  17.  
  18.           if(!grid->Cells[4][i].IsEmpty())
  19.                piezas=grid->Cells[4][i].ToInt();
  20.           else piezas=0;
  21.           if(!grid->Cells[5][i].IsEmpty())
  22.                pt=grid->Cells[5][i].ToInt();
  23.           else pt=0;
  24.           if(!grid->Cells[6][i].IsEmpty())
  25.                volm3=grid->Cells[6][i].ToDouble();
  26.           else volm3=0;
  27.  
  28.           if((grueso.IsEmpty()==true)||(ancho.IsEmpty()==true)||(piezas==0)||(volm3==0))
  29.                NULL;
  30.           else
  31.           {
  32.                tabla->Insert();
  33.                tabla->FieldByName("Grueso")->Value=grueso;
  34.                tabla->FieldByName("Ancho")->Value=ancho;
  35.                tabla->FieldByName("Largo")->Value=largo;
  36.                tabla->FieldByName("Piezas")->Value=piezas;
  37.                tabla->FieldByName("Volpt")->Value=pt;
  38.                tabla->FieldByName("Volmc")->Value=volm3;
  39.                tabla->FieldByName("Definicion")->Value="Madera aserrada";
  40.                tabla->FieldByName("Especie")->Value="Pino";
  41.                tabla->FieldByName("Clase")->Value="Producto primario";
  42.                tabla->Post();
  43.           }
  44.      }
  45.  
  46.      tabla->Close();
  47.  
  48.  
  49. }
  50.  
  51.  
  52.  
Suerte!. :D

3
C++ Builder / Re: Chart O Gráfico De Torta
« en: Viernes 30 de Mayo de 2008, 08:47 »
De hecho en la ayuda de Builder hay un artículo muy completo sobre este componente y aunque es un poco deficiente si lo lees con atención te servirá de mucho, yo estuve buscando información sobre lo mismo hace tiempo pero encontré muy poco, por lo tanto tuve que ponerme a pensar un poco.
Código: Text
  1.  
  2.  String sql,elemento="Aserraderos",nelemento,coef,fecha,ctotal,cprom;
  3.           double coeficiente,suma=0,promedio,poblacion;
  4.          // TColor color_inicial=clNavy;
  5.  
  6.           TColor colores[8]={clInactiveCaption,clBlue,clGreen,clMaroon,clOlive,clFuchsia,clLime};
  7.  
  8.           int i,n,aleatorio;
  9.           sql="SELECT Elemento, Cantidad FROM configuracion WHERE ELEMENTO LIKE '"+elemento+"'";
  10.           Query1->SQL->Clear();
  11.           Query1->SQL->Add(sql);
  12.           Query1->Open();
  13.           n=Query1->FieldByName("Cantidad")->AsInteger;
  14.           Query1->Close();
  15.           StringGrid2->RowCount=n+1;
  16.           fecha=StringGrid1->Cells[StringGrid1->Col][StringGrid1->Row];
  17.           StringGrid2->Font->Color=clMaroon;
  18.           poblacion=n;
  19.  
  20.           Chart1->Series[0]->Clear();
  21.          // Chart1->Series[0]->AddXY(1,25,"One",clBlue);
  22.  
  23.  
  24.           for(i=1;i<n+1;i++)
  25.           {
  26.                nelemento=i;
  27.  
  28.                sql="SELECT Coeficiente FROM coeficientes WHERE Fecha LIKE '"+fecha+"' AND Aserradero="+nelemento;
  29.                Query1->Close();
  30.                Query1->SQL->Clear();
  31.                Query1->SQL->Add(sql);
  32.                Query1->Open();
  33.                if(!Query1->IsEmpty())
  34.                {
  35.                     coeficiente=Query1->FieldByName("Coeficiente")->AsFloat;
  36.                     if(coeficiente==0)
  37.                          coef="";
  38.                     else
  39.                          coef=FormatFloat("0.00",coeficiente)+'%';
  40.                }
  41.                else
  42.                {
  43.                     coeficiente=0;
  44.                     coef="";
  45.                }
  46.  
  47.                suma+=coeficiente;
  48.                ctotal=suma;
  49.                StringGrid2->Cells[0][i]=nelemento;
  50.                StringGrid2->Cells[1][i]=coef;
  51.  
  52.                aleatorio=rand()%7;
  53.  
  54.                Chart1->Series[0]->AddXY(i,coeficiente,i,colores[aleatorio]);
  55.           }
  56.           promedio=suma/poblacion;
  57.           cprom=promedio;
  58.  
  59.  

Lo anterior es un fragmento de código que usé alguna vez, no es la gran cosa pero puede ayudarte, lo que a mi se me hizo más dificil fue entender las propiedades de ese componente ya que son cientos y me parecieron algo confusos.

Suerte!. :D

4
C++ Builder / Re: Editar Stringgrid
« en: Viernes 30 de Mayo de 2008, 08:32 »
<_<  <_<  <_< mmmmm, me parece que puedo inspirarte de la siguiente forma, lo que puedes hacer es que al dar clic en el botón se ponga por ejemplo en la celda seleccionada un valor de la siguiente forma
Código: Text
  1.  
  2. StringGrid1->Cells[StringGrid1->Col][StringGrid1->Row]="Celda editable";
  3.  
  4. //despues de esto programas el evento OnSelectCell del StringGrid
  5.  
  6. void __fastcall TForm1::StringGrid1SelectCell(TObject *Sender, long Col, long Row, bool &CanSelect)
  7.  
  8. {
  9.  
  10. if(StringGrid1->Cells[Col][Row]=="Celda editable")
  11. CanSelect=true;
  12. else
  13. CanSelect=false;
  14. }
  15.  
  16.  
  17.  

obviamente la propiedad GoEditing debe estar a TRUE
Espero que te sirva y si no entendiste dime y te lo explico mejor

ah, y para guardar los datos de la celda puedes crear una matriz temporal que almacene los valores del StringGrid cuando hagas clic en el botón, obviamente la matriz debe ser de la misma dimensión que el stringgrid, y por ejemplo puedes hacer que se recorra el stringrid y se almacenen los valores en la matriz, esto es si solo quieres que el valor dure mientras se ejecuta el programa, de lo contrario puedes almacenarlo en un archivo de texto y sustituirlo las veces que desees con un nuevo archivo conteniendo nuevos valores...

5
C++ Builder / Re: Cambiar Propiedad De Varios Componentes
« en: Jueves 6 de Diciembre de 2007, 17:13 »
Si, si te he entendido, pero, todos los componentes son iguales? o son distintos? (es decir, todos son Edits (eg)o son Edits, Buttons y mas.)
 :huh:

6
C++ Builder / Re: Splash Screen
« en: Miércoles 5 de Diciembre de 2007, 18:17 »
El form para el splash no tiene que ser precisamente el form principal, puede ser cualquier otro, simplemente tienes que cambiar el orden en que estas se crean. Puedes mostrar el form con splash y luego mostrar el principal.

Puedes usar al señor Google y buscar SplashForm C++Builder, o incluso en este mismo foro, hay varios temas tratados respecto al mismo asunto.

EI: sin spam por favor.

7
C++ Builder / Re: Cambiar Propiedad De Varios Componentes
« en: Miércoles 5 de Diciembre de 2007, 18:09 »
Supongo que puedes recorrer todos los componentes con un ciclo for y cambiarles lo que deseas, puedes tomar el siguiente ejemplo para inspirarte, es para limpiar todos los Edits de un Form

Código: Text
  1.  
  2. for (int i=0;i<ComponentCount;i++)
  3.    {
  4.           if(Components[i]->InheritsFrom(__classid(TCustomEdit)))
  5.                ((TCustomEdit*)Components[i])->Clear();
  6.  
  7.    }
  8.  
  9.  

Espero pueda servirte. Saludos :D

8
C++ Builder / Re: Movimiento Sobre Formularios
« en: Miércoles 7 de Noviembre de 2007, 04:27 »
porque no pruebas esto:

Código: Text
  1.  
  2. TControl* control = static_cast<TControl*>(Sender);
  3.      static bool pulsado = false;
  4.      static TPoint posicion;
  5.  
  6.      if (!pulsado && Shift.Contains(ssLeft))
  7.      posicion = Point(X, Y);
  8.  
  9.      pulsado = Shift.Contains(ssLeft);
  10.      if (pulsado)
  11.      {
  12.           control->Left += X - posicion.x;
  13.           control->Top  += Y - posicion.y;
  14.      }
  15.  
  16.  

Lo probé en Builder 5, espero te sirva. :D

9
C++ Builder / Re: Como Hacer Botones Redondos?
« en: Miércoles 7 de Noviembre de 2007, 04:11 »
Podrías ponder una imagen redonda que ocupe todo el SpeedButton y le pones la propiedad Flat a true.

Bueno, es una idea :D

10
C++ Builder / Re: Variable "key" Del Evento "keypress"
« en: Sábado 27 de Octubre de 2007, 01:51 »
B) Pues no es tan dificil, puedes hacer esto

char tecla;
tecla=key; //pones un breakpoint aqui


Pues pones un breakpoint donde te lo indico, corres el programa y vas checando las teclas que vayas oprimiendo, asi de simple (eso creo)

De nadas!.. y espero te sirva :D

PD. Oviamente en el OnKeyPress

11
C++ Builder / Re: Variable "key" Del Evento "keypress"
« en: Jueves 25 de Octubre de 2007, 17:47 »
Porque no vas almacenando todos los valores de las teclas pulsadas en un vector y al final los muestras en pantalla, o si solo lo que quieres es conocer el valor de cada caracter, no precisamente cuando se pulsa, tal vez te sirva esto:

 :whistling: crea un ciclo for de la siguiente forma:
Código: Text
  1.  
  2. int i;
  3. char car='a';
  4. StringGrid1->RowCount=256;
  5.  
  6. for(i=0;i<256;i++)
  7. {
  8. car++;
  9. StringGrid1->Cells[0][i]=car;
  10. }
  11.  

Espero haberte ayudado, y si no explicame otra vez porque tal vez no haya entendido. :rolleyes:

12
C++ Builder / Re: [linker Fatal Error] Fatal: Unable To Open File 'r
« en: Jueves 13 de Septiembre de 2007, 03:12 »
Eso es todo?, maldición, debería decir algo más, y si pruebas a construir todo el proyecto de nuevo?, o revisa el .cpp, quizá haya un archivo que no debiera estar ahí.
 :devil:

13
C++ Builder / Re: [linker Fatal Error] Fatal: Unable To Open File 'r
« en: Miércoles 12 de Septiembre de 2007, 16:28 »
Hola, sin no me quivoco puedes abrir el programa y compilar, pero cuando quieres correrlo te sale ese mensaje en la parte inferior, si es así, podías poner todo el contenido de le línea del mensaje?, quizá así pueda decirte donde está el problema, bueno, si es lo que estoy pensando entonces no es tan grave. :D

14
C++ Builder / Re: Compilar .exe Con Todas Sus Librerias
« en: Viernes 7 de Septiembre de 2007, 01:55 »
Efectivamente como has dicho, la pregunta ya se ha hecho varias veces e igualmente ha sido respondida, solo hay que usar el buscador por el amor de Dios <_<

http://foros.solocodigo.com/index.php?showtopic=16040&hl=

http://foros.solocodigo.com/index.php?show...0&hl=ejecutable

15
C++ Builder / Re: Tstringlist : Modificar Un Item En Particular
« en: Lunes 27 de Agosto de 2007, 17:41 »
Porqué no recorres la lista con un for y cuando llegues al elemento que quieres lo modificas, más o menos así:

Citar
int i;
String texto;

for(i=0;i<lista->Count;i++)
{
texto=lista;
if(i==3)
{
lista="Nuevo texto";
break;
}
//bueno, creo que la variable texto está demás
//pero por allá va la idea
}
Suerte!.. :D

16
C++ Builder / Opciones De Un Stringgrid
« en: Sábado 18 de Agosto de 2007, 02:33 »
:hola: Hola, saludos a todos, de casualidad alguien sabe como poner la Opción goEditing a true o false de un StringGrid pero desde código (en tiempo de ejecución)?

Desde ya, gracias por las respuestas.  :D

17
C++ Builder / Re: Bajar Un Archivo Desde Internet
« en: Jueves 26 de Julio de 2007, 21:54 »
Visita:

La web de JM

ahi hay algo que tal vez pueda servirte.
Suerte :D

18
C++ Builder / Re: Buscar Archivos
« en: Viernes 25 de Mayo de 2007, 17:59 »
:kicking: Excelente, ya lo he probado y funciona perfectamente, salvo por unos detalles que estoy resolviendo, si no encuentro la solución pondré otro post, pero la ruta se encuentra sin problemas.

Muchisimas gracias por tu ayuda.  :D

19
C++ Builder / Buscar Archivos
« en: Miércoles 23 de Mayo de 2007, 04:59 »
Hola, estoy haciendo una base de datos y necesito copiar archivos de cualquier unidad a una carpeta específica del disco duro. He pensado en usar algo semejante al OpenDialog para que el usuario pueda buscar el arhivo, pero no tengo idea de como detectar la ruta del archivo seleccionado. Una vez detectada la ruta pues copiar el archivo es algo sencillo.

Alguien podría ayudarme? o se les ocurre una idea mejor?. Pienso que mi idea más o menos sería como usar el botón examinar que es muy común en los correos electrónicos cuando se adjunta un archivo. :kicking:

Gracias por las ideas aportadas. :D

20
C++ Builder / Re: Una Gran Duda
« en: Lunes 16 de Abril de 2007, 18:37 »
Yo también intenté usar el OpenImageDialog pero me generó muchos problemas que al final opté por usar solamente el OpenDialog y todo salió perfectamente, te recomiendo usar este componente y evitarte problemas.

Suerte! :D  &lt;_&lt;

21
C++ Builder / Re: Como Arrastrar Imagenes A Mi Aplicacion
« en: Sábado 31 de Marzo de 2007, 00:12 »
Tal vez este enlace pueda servirte de algo:

Drag and Drop

Suerte! :D  B)

22
C++ Builder / Re: Ampliar Imagen Detro De Ejecuicion
« en: Lunes 26 de Marzo de 2007, 21:34 »
Si lo que quieres es que el tamaño de la imagen se amplíe cuando pase el cursor, supongo que puedes usar los eventos OnMouseUp y OnMouseOver.  :D

O si no es lo querías entonces tal vez debieras explicarte mejor.  :comp:

23
C++ Builder / C++builder En Os X
« en: Martes 20 de Marzo de 2007, 18:45 »
Bueno, en verdad ya se que no se puede correr Builder sobre OS X, lo que pasa es que por ahí he leído que se puede correr Linux, Windows y OS X en una MAC, y he estado pensando en comprarme un Macbook, pero me surge la duda de que si podré correr Windows XP sobre ella y programar en Builder como si estuviera trabajando en una PC, también me gustaría trabajar con AutoCAD y con MatLab, por supuesto, todo sobre una misma computadora.

Alguien podría despejar mi duda?  :D  :blink:

De antemano gracias. :whistling:

24
PHP / Re: Ayuda Con Require
« en: Miércoles 7 de Marzo de 2007, 21:59 »
ok, muchas gracias, ya lo resolví.

25
PHP / Ayuda Con Require
« en: Jueves 1 de Marzo de 2007, 18:39 »
Hola, para empezar, soy nuevo en esto del PHP y no se mucho al respecto por lo que acudo a vosotros para pedir ayuda.

Sucede que tengo que crear una página para ofertas de empleo, entonces lo que hice fue crear una tabla (en html, no uso ninguna base de datos), en la primera columna puse todas las ofertas disponibles y en la otra los detalles, por lo que queda más o menos así:

Oferta 1 | esta es la oferta 1
Oferta 2 | Esta es la oferta 2
Oferta 3 | Esta es la oferta 3

entonces cargo los títulos de las ofertas así:
Código: Text
  1.  
  2. &#60;?php
  3. &#036;file= file(&#34;ofempleo/ofertas.txt&#34;);
  4. &#036;n = count(&#036;file);
  5. for (&#036;i=&#036;n-1;&#036;i&#62;=0;&#036;i--){
  6. &#036;dato= explode (&#34;|&#60;|&#34;,&#036;file[&#036;i]);
  7. echo &#34;&#60;font style='font-family: arial; font-size: 13px; color: darkblue;'&#62;&#60;b&#62;&#036;dato[0]&#60;/font&#62;&#60;/b&#62; &#60;a href=#&#62;Ver&#60;/a&#62;&#60;br&#62;&#34;;
  8. }
  9. ?&#62;
  10.  
  11.  

Y pues como ven solo estoy cargando los títulos. este es el archivo .txt

Oferta1|<|oferta010307.txt|<|1|<|
Oferta2|<|oferta020307.txt|<|2|<|
Oferta3|<|oferta040307.txt>|<|3|<|

Y pues lo que quiero es que los detalles de la oferta siempre estén ocultas, por lo tanto, la hacer clic en el vinculo Ver que se cargue el archivo en la segunda columna. Pero no se como hacerlo, alguien podría ayudarme?. De antemano gracias.

 :D  :comp:

Páginas: [1] 2 3 ... 10