|
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 - Unsire
Páginas: [1]
1
« en: Lunes 13 de Junio de 2011, 03:45 »
A ver, a ver, a ver. Me parece que andamos medio confundidos. La información que tengas en una tabla siempre va a aparecer como haya sido introducida, al final de todos los registros existentes, y si lo que quieres es ordenar los datos de una tabla ya existente y que todo eso se guarde entonces lo que tienes que hacer es una consulta ORDEY BY, enviar todos esos datos a una nueva tabla y después sustituir la tabla vieja, solo así se puede hacer, porque el Query es para hacer consultas, si quieres modificar tienes que usar UPDATE, etc.
2
« en: Viernes 10 de Junio de 2011, 02:35 »
Supongo que quieres algo como esto: int longitud; String texto; texto=Edit1->Text; longitud=texto.Length(); if(longitud==5) { ShowMessage("La longitud es correcta"); //más instrucciones } else { ShowMessage("ERROR: La longitud del texto introducido debe ser igual a 5"); Edit1->Clear(); }
3
« en: Viernes 10 de Junio de 2011, 02:16 »
Prueba de la siguiente forma:
Query1->Close(); Query1->SQL->Clear(); Query1->SQL->Add("SELECT Apellidos,Nombre FROM Usuarios ORDER BY Apellidos"); Query1->Open();
Y si quieres que te los ordene de forma ascendente agrega ASC al final o DESC para descendente.
4
« en: Jueves 9 de Junio de 2011, 02:15 »
En el caso de C++Builder esto se hace selecionando Project->Options y luego en la pestaña Packages desactivar la opción "Build with runtime packages" y después en la pestaña Linker desactivar donde dice "Use dynamic RTL". Pero no estoy completamente seguro de que se pueda hacer portable con todo y base de datos.
5
« en: Jueves 9 de Junio de 2011, 01:58 »
En lugar de un TTable usa un TQuery y haz una consulta de la forma: Query1->SQL->Add("SELECT LastName,FirstName FROM employee ORDER BY Lastname");
6
« en: Jueves 9 de Junio de 2011, 01:56 »
Bueno, mejor te pongo un ejemplo. Lo hice en C++Builder 5 con la base de datos BCDEMOS void __fastcall TForm1::Button1Click(TObject *Sender) { Query1->SQL->Clear(); Query1->SQL->Add("SELECT LastName,FirstName FROM employee"); Query1->Open(); Query1->First(); ComboBox1->Clear(); int i,n; String nombre,apellido; n=Query1->RecordCount; for(i=0;i<n;i++) { nombre=Query1->FieldByName("FirstName")->AsString; apellido=Query1->FieldByName("LastName")->AsString; ComboBox1->Items->Add(nombre+" "+apellido); Query1->Next(); } Query1->Close(); } //---------------------------------------------------------------------------
Cualquier duda estoy aquí para aclararla.
7
« en: Jueves 9 de Junio de 2011, 01:41 »
Supongo que puedes hacer algo como lo siguiente: 1. Hacer una consulta a la tabla y guardar los valores que quieres en una variable 2. Después añadir en el combobox la cadena resultante de la suma de las variables de la siguiente forma: ComboBox1->Items->Add(var1+var2+var3);. Todo esto lo vas haciendo con un ciclo for 3. Cierras la consulta y listo......
Espero hayas entendido.
8
« en: Domingo 21 de Marzo de 2010, 20:32 »
Sencillo, por ejemplo
78.36/13=6.0276923076923076923076923076923 resultado=6.0276923076923076923076923076923; Para mostrarlo en un Edit con tres decimales se hace simplemente Edit1->Text=FormatFloat("0.000",resultado);
Edit1->Text=FormatFloat(resultado,"0.000");
Prueba de las 2 formas, no estoy muy seguro cual es la correcta. Saludos.
9
« en: Domingo 21 de Marzo de 2010, 20:12 »
Revisa también el separador de decimales en tu configuración regional, una vez me pasó que yo ponía 3.46 y mi teclado estaba configurado para interpretar 3,46. parece que tu código está bien, un consejo, siempre usa variables double aunque estés introduciendo datos enteros.
10
« en: Domingo 21 de Marzo de 2010, 19:49 »
ADOQuery1->SQL->Text = "UPDATE DiabetesMellitus_AnualMunicipios SET ID_Control = '"+String(ID1)+"', P_Control = '"+String(P1)+"',ID_Informacion = '"+String(ID2)+"',P_Informacion = '"+String(P2)+"', ID_Promocion1 = '"+String(ID3)+"', P_Promocion ='"+String(P3)+"', ID_Promocion2 = '"+String(ID4)+"',ID_General = '"+String(IDG)+"' where Año = '"+parametro+"'";// AND Localidad = '"+String(parametro3)+"'"; ADOQuery1->Open();
Sencillo, quita todos los "+String...", solo pon: ADOQuery1->SQL->Text = "UPDATE DiabetesMellitus_AnualMunicipios SET ID_Control = 'ID1', P_Control = 'P1', etc. ESpero haberte ayudado, cualquier duda mi msn es: eddy_ef@hotmail.comSaludos.
11
« en: Sábado 7 de Marzo de 2009, 02:20 »
Muy sencillo amigo mío, hazlo de la siguiente forma: TStringList *file = new TStringList(); int col,row; file->Clear(); for(row=0;row<StringGrid1->RowCount;row++) { AnsiString linea=""; for(col=0;col<StringGrid1->ColCount;col++) linea+=StringGrid1->Cells[col][row]+","; linea.Delete(linea.Length(),1); file->Append(linea); } SaveDialog1->Title="Guardar tabla como:"; if(SaveDialog1->Execute()) file->SaveToFile(SaveDialog1->FileName);
Ahora si no quieres usar un SaveDialog y guardarlo directamente en una carpeta entonces ponlo así: file->SaveToFile("C:archivos/tu_archivo.txt"); Suerte!..
12
« en: Lunes 2 de Marzo de 2009, 23:16 »
Tal vez el siguiente código te pueda ayudar un poco: TControl* control = static_cast<TControl*>(Sender); static bool pulsado = false; static TPoint posicion; if (!pulsado && Shift.Contains(ssLeft)) posicion = Point(X, Y); pulsado = Shift.Contains(ssLeft); if (pulsado) { control->Left += X - posicion.x; control->Top += Y - posicion.y;
Ponlo en el Evento OnMouseMove del objeto que quieras mover, en esta caso un TImage y para que no se vea cuadrada pon la propiedad Transparent=true;
13
« en: Lunes 2 de Marzo de 2009, 22:23 »
Ok, por nada, para eso estamos!..
14
« en: Lunes 2 de Marzo de 2009, 20:57 »
Entoces hazlo así: Form1->Image1->Picture=NULL; Me parece que con eso se resuelve el problema.
15
« en: Lunes 2 de Marzo de 2009, 20:39 »
Pues eso es muy sencillo, solo tienes que hacerlo de la siguiente forma: Image1->Picture->SaveToFile("carpeta/"+nombre_imagen+".jpg"); Donde nombre_imagen es una variable alfanúmerica Compruebas si ya existe esa imagen, si existe entonces le puedes cambiar el nombre tomando el mismo y sumándole 1 (o la cantidad que quieras) y listo. Suerte!.
16
« en: Lunes 2 de Marzo de 2009, 20:23 »
Creo que esto te puede servir. Image1->Picture->Bitmap->FreeImage(); Suerte!.
17
« en: Jueves 26 de Febrero de 2009, 02:19 »
Hola, para hacer lo que quieres es algo más o menos como el siguiente código, yo lo he usado y funciona a la parfección TRect rect = Rect; StringGrid1->Canvas->Font = StringGrid1->Font; if (ACol>=0 && State.Contains(gdFixed)) { rect.right++; rect.Bottom++; StringGrid1->Canvas->Font->Color = clBlack; StringGrid1->Canvas->Brush->Style = bsClear; StringGrid1->Canvas->Font->Style = TFontStyles()<< fsBold; DrawText(StringGrid1->Canvas->Handle, StringGrid1->Cells[ACol][ARow].c_str(), StringGrid1->Cells[ACol][ARow].Length(), &rect, DT_CENTER +2 | DT_CENTER +3 ); } else { StringGrid1->Canvas->FillRect(rect); if(ACol>=2) DrawText(StringGrid1->Canvas->Handle, StringGrid1->Cells[ACol][ARow].c_str(),StringGrid1->Cells[ACol][ARow].Length(), &rect,DT_RIGHT | DT_RIGHT ); else DrawText(StringGrid1->Canvas->Handle, StringGrid1->Cells[ACol][ARow].c_str(),StringGrid1->Cells[ACol][ARow].Length(), &rect,DT_CENTER | DT_CENTER ); }
Páginas: [1]
|
|
|