|
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 - cpmario
Páginas: 1 ... 12 13 [14] 15 16 ... 26
326
« en: Jueves 16 de Marzo de 2006, 21:53 »
Ya revisé las rutinas en los enlaces que te indiqué, la última (planet-source-code.com) es la mejor y más sencilla de implementar.
327
« en: Jueves 16 de Marzo de 2006, 19:10 »
328
« en: Jueves 16 de Marzo de 2006, 16:29 »
329
« en: Jueves 16 de Marzo de 2006, 02:09 »
330
« en: Viernes 10 de Marzo de 2006, 23:52 »
Lo que hace falta un manejo de error para resolver el problema y limpiar todo tipo de estilo de combos. Public Sub LimpiarControles(Obj As Form) Dim ctlTemp As Control For Each ctlTemp In Obj.Controls On Error Resume Next If TypeOf ctlTemp Is TextBox Then ctlTemp.Text = "" End If If TypeOf ctlTemp Is ComboBox Then ctlTemp.Text = "" ctlTemp.Clear End If Next ctlTemp End Sub
331
« en: Jueves 9 de Marzo de 2006, 15:51 »
No, pero podrías usar un control Timer para averiguarlo.
332
« en: Jueves 9 de Marzo de 2006, 05:46 »
Puedes hacer un Select Case Case 1 strMes ="Enero" Case 2 strMes ="Febrero" Etc, Etc
333
« en: Jueves 9 de Marzo de 2006, 02:06 »
Se puede agregar un control HScroll y adecuarlo con los valores. Te adjunto un pequeño proyecto como ejemplo.
334
« en: Miércoles 8 de Marzo de 2006, 21:09 »
No existe ninguna función específica para lo que deseas, la mejor rutina que puedes hace es algo parecido a lo que nos dice Makko. Prueba esta rutina: Public Sub LimpiarControles(Obj As Form) Dim ctlTemp As Control For Each ctlTemp In Obj.Controls If TypeOf ctlTemp Is TextBox Then ctlTemp.Text = "" End If If TypeOf ctlTemp Is ComboBox Then ctlTemp.Text = "" ctlTemp.Clear End If Next ctlTemp End Sub
Puedes llamar esta rutina con un botón comando, desde la forma que necesites limpiar, de la siguiente manera: Private Sub Command1_Click() Call LimpiarControles(Me) End Sub
335
« en: Miércoles 8 de Marzo de 2006, 15:43 »
Si explicas cual es la utilidad de hacer variable un nombre de una variable, es probable que se te pueda dar una alternativa, ya que yo sé que los nombres de variables no puedes cambiarlas en tiempo de ejecución, solo en tiempo de diseño.
336
« en: Martes 7 de Marzo de 2006, 22:37 »
Se puede modificar tu rutina sin usar el componente ActiveX. Dim miwidth As Long Dim miheight As Long miwidth = Screen.Width / 15 miheight = Screen.Height / 15 If ((miwidth = 800) And (miheight = 600)) Then Me.Width = Screen.Width Me.Height = Screen.Height - 350 Me.Left = 0 Me.Top = 0 ElseIf ((miwidth > 800) And (miheight > 600)) Then Me.Width = (Screen.Width * 0.75) 'el ancho es el 75% del ancho de la pantalla Me.Height = (Screen.Height * 0.75) 'el largo es el 75% de la pantalla Me.Left = (Screen.Width - Me.Width) / 2 ' Centra el form horizontalmente Me.Top = (Screen.Height - Me.Height) / 2 'Centra el form verticalmente ElseIf ((miwidth < 800) And (miheight < 600)) Then MsgBox "resolución no soportada por la aplicación" End If
Te quería adjuntar un archivo ZIP con un ejemplo, pero aparece un error en el foro que dice "No puedes adjuntar este tipo de archivos" ? ignoro el motivo.....
337
« en: Martes 7 de Marzo de 2006, 18:23 »
En mi equipo esto si funciona: 'Calculamos la resolución miwidth = Screen.Width / 15 miheight = Screen.Height / 15
Proporciona en forma correcta la resolución de pantalla. Esto también funciona ElseIf ((miwidth > 800) And (miheight > 600)) Then Me.Width = (Screen.Width * 0.75) 'el ancho es el 75% del ancho de la pantalla Me.Height = (Screen.Height * 0.75) 'el largo es el 75% de la pantalla Me.Left = (Screen.Width - Me.Width) / 2 ' Centra el form horizontalmente Me.Top = (Screen.Height - Me.Height) / 2 'Centra el form verticalmente
Coloca la forma en el centro y al 75% del tamaño de la pantalla. Como no proporcionas el código del control o clase "SysInfo1" no puedo decirte nada al respecto.
338
« en: Martes 7 de Marzo de 2006, 18:06 »
339
« en: Martes 7 de Marzo de 2006, 17:00 »
Repito, con la información que proporcionan, es una adivinanza tratar de saber que pasa. Al menos coloquen en un archivo adunto, o en la discución, el setup.lst del paquete de instalación para tener una idea de lo que se trata su aplicación y que archivos instala.
340
« en: Lunes 6 de Marzo de 2006, 21:47 »
El problema que mencionas se debe a que al usar la instrucción Siempre se agrega al final el CrLF para evitar que esto suceda debes de colocar un punto y coma al final de la línea, por ejemplo:
341
« en: Lunes 6 de Marzo de 2006, 21:37 »
Precisamente el último código evita que ese tipo de problema suceda.
342
« en: Sábado 4 de Marzo de 2006, 02:56 »
Vamos por partes: App.path te dice donde está el ejecutable de tu programa en cualquier equipo de computo. Por ejemplo: "C:\Windows\VB" Tu base de datos estará en App.Path & "\DB-Musica\1.mdb" Entonces Data1.DatabaseName = App.Path & "\DB-Musica\1.mdb"
Debiera funcionar si colocas esta línea de código en Sub Form_Load lo más arriba posible. -------------------------------------------------------- Por otra parte yo uso este método también Primero, siempre coloco las bases de datos en el directorio del ejecutable y el siguiente código lo coloco en Sub Form_Initialize() de la forma principal ChDrive CurDir(App.Path) ChDir App.Path
Para que el directorio de trabajo sea el de la aplicación. Y en en cuadro de propiedades al datacontrol le escribes solo el nombre del archivo sin el path por ejemplo: DatabaseName= 1.mdb Te adjunto un pequeño proyecto para demostrártelo. -------------------------------------------------------
343
« en: Sábado 4 de Marzo de 2006, 00:26 »
El problema que veo es que tienes equivocada la ruta de la base de datos. Coloca este código en Sub Form_Load lo más arriba posible. Data1.DatabaseName = App.path & "\XX\ZZ\1.mdb"
Equivocas "/" por "\"
344
« en: Jueves 2 de Marzo de 2006, 20:38 »
345
« en: Jueves 2 de Marzo de 2006, 20:29 »
Te djunto el código que utilizo para compactar y reparar la base de datos en DAO Sub CompactDbase(sDbase As String, Aviso As Boolean) Dim sBakDb As String Dim db As Database On Error Resume Next If sDbase <> "" Then Screen.MousePointer = vbHourglass 'try and open it in exclusive mode Set db = OpenDatabase(sDbase, True) If Err = 0 Then 'opened ok so close it db.Close 'construct the correct .bak filename sBakDb = Left$(sDbase, InStr(sDbase, ".")) & "BAK" 'give a chance to exit If Aviso Then gstrMsg = "Su base de datos " & sDbase & vbCrLf & " se copiará. " & sBakDb If MsgBox(gstrMsg, vbOKCancel + vbExclamation, "Compactando la Base de Datos") = vbCancel Then Screen.MousePointer = vbDefault Exit Sub End If End If 'kill any existing .bak If ExistFilename(sBakDb) Then Kill (sBakDb) End If If Err <> 0 Then Err = 0 'err because no existing .bak 'copy original to sBakdb FileCopy sDbase, sBakDb If Err <> 0 Then 'call the generic error handler GenErrorHandler "copiado de " & sDbase & " a " & sBakDb, Err, Error Screen.MousePointer = vbDefault Exit Sub End If 'kill the existing database because can't compact into an existing one If ExistFilename(sDbase) Then Kill (sDbase) End If DoEvents If Err = 0 Then 'deleted ok so compact it 'DBEngine.RepairDatabase sBakDb DBEngine.CompactDatabase sBakDb, sDbase, dbLangGeneral, dbDecrypt If Err <> 0 Then 'call the generic error handler GenErrorHandler "compactado de la base de datos", Err.Number, Err.Description Err = 0 'copy bakdb to original FileCopy sBakDb, sDbase If Err <> 0 Then 'call the generic error handler GenErrorHandler "Error en copiado de " & sBakDb & " a " & sDbase, Err.Number, Err.Description Screen.MousePointer = vbDefault Exit Sub End If Else If Aviso Then MsgBox "Reparación y compactación completa.", vbOKOnly + vbExclamation, App.Title End If End If Else End If Else 'call the generic error handler GenErrorHandler "intento de abrir la base de datos de manera exclusiva.", Err, Error End If End If Screen.MousePointer = vbDefault End Sub
Espero te sirva.
347
« en: Jueves 2 de Marzo de 2006, 15:38 »
Reparar y compactar, o crear una nueva base de datos e importar, funciona de las 2 maneras, personalmente al trabajar en VB6 prefiero reparar y compactar, me parece que es más rápido y seguro.
348
« en: Martes 28 de Febrero de 2006, 15:27 »
Ejemplo de la instrucción Kill En este ejemplo se utiliza la instrucción Kill para borrar un archivo de un disco. ' Se supone que PRUEBA es un archivo que contiene información. Kill "PRUEBA" ' Se elimina el archivo. ' Se eliminan todos los archivos *.TXT del directorio actual. Kill "*.TXT"
349
« en: Lunes 27 de Febrero de 2006, 03:36 »
Con la información que proporcionas ayudarte es una adivinanza. Puedes hacer una búsqueda del error línea por línea o sección por sección por ejemplo: Sub Form_Load 'Sección1 -> aquí está tu código Línea de código 1 Línea de código 2 Línea de código 2 Msgbox "La sección1 se ejecutó con éxito" 'Sección2 -> aquí está tu código Línea de código 1 Línea de código 2 Línea de código 2 Msgbox "La sección2 se ejecutó con éxito" etc, etc... End Sub Puede ser tedioso pero es un posible último recurso. Una vez que localices la línea que te da el error. Se prodrá tener una idea de cual puede ser el error.
350
« en: Sábado 25 de Febrero de 2006, 02:45 »
Tienes que usar un campo de tipo 'Memo' en lugar del tipo 'Text'
Páginas: 1 ... 12 13 [14] 15 16 ... 26
|
|
|