Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - CeLaYa

#331
Programación Visual Basic / Re: Factura en VB
25 Noviembre 2006, 15:03 PM
o si lo que quieres es saber como imprimir tu factura te recomiendo que te bajas el Crystal reports, y quitate de complicaciones
#332
Programación Visual Basic / Duda sobre Treview
25 Noviembre 2006, 14:58 PM
Buenas, estoy manejando un Treview solo que me surgio una duda, como puedo saber cuatos niveles tiene el árbol y si le doy click a un nodo como se en que nivel esta?



para que me entiendan mejor, si tengo:

Nivel1......Nivel2......Nivel3......Nivel4
                  .              .               .
Nodo1         .              .               .
|---------Nodo2            .               .
|                |---------Nodo3           .
|                                  |---------Nodo4
|---------Nodo5
|                |---------Nodo6
|---------Nodo7
|---------Nodo8
|---------Nodo9


esto seria el árbol tiene 4 niveles y el nodo6 esta en el nivel 3
#333
puedes poner una caja de texto para simular que el usuario esta escibiendo arriba del MSFlexGrid, y que al dar enter en el text te ponga los datos en la celda


Private Sub MSFlexGrid1_EnterCell()
    Text1.Top = MSFlexGrid1.CellTop
    Text1.Left = MSFlexGrid1.CellLeft
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
    If KeyAscii = 13 Then MSFlexGrid1.Text = Text1.Text
End Sub
#334
pues puedes poner un procedimiento para que te guarde el path del .exe al cerrar el form y al cargarlro lo abres para que ya te lo de por default.



private sub GuardarPath(cadena as string)
    Dim f As Long, r As String * 250
    r = cadena
    f = FreeFile
   
    Open App.Path + "\path.txt" For Random As #f Len = Len(r)
    Put #f, 0, r
    Close #f


end sub

Public Function AbrirPath() As String
    Dim f As Long, aux As String * 250
   
    f = FreeFile
    Open App.Path + "\path.txt" For Random As #f Len = 250
    Get #f, 0, aux
    AbrirArchivo = aux
    Close #f
   
End Function
   
y en el form

private sub form_load()
    text1.text = abrirpath
end sub

private sub form_Unload
    if checkBox.Value <> 0 then  Guardar_Path (text1.text)
end sub
#335
Programación Visual Basic / Re: Factura en VB
25 Noviembre 2006, 14:03 PM
pues es cuestión de como decidas hacerlo puedes usar un grid, un flexgrid o incluso un Listview
#336
pero que error te marca??
te envia solo basura???
no hace nada??
#337
el crystal Reports es una aplicación para generar informes, desde la aplicación creas la estructura del reporte, es decir como quieres que se vea, insertas imagenes, tutulos, y los campos de la BD que quieres mostrar, y por medio de un control OCX puedes estar haceindo filtrados de datos desde Visual Basic para mostrar tu reporte en un form o mandarlo a la impresora.


te dejo un link de donde te puedes descargar el Crystal R.

http://www.torrentz.com/torrent_3525.html
#338
a ver si esto te sirve:

'This program needs 3 buttons
Const REG_SZ = 1 ' Unicode nul terminated string
Const REG_BINARY = 3 ' Free form binary
Const HKEY_CURRENT_USER = &H80000001
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Function RegQueryStringValue(ByVal hKey As Long, ByVal strValueName As String) As String
    Dim lResult As Long, lValueType As Long, strBuf As String, lDataBufSize As Long
    'retrieve nformation about the key
    lResult = RegQueryValueEx(hKey, strValueName, 0, lValueType, ByVal 0, lDataBufSize)
    If lResult = 0 Then
        If lValueType = REG_SZ Then
            'Create a buffer
            strBuf = String(lDataBufSize, Chr$(0))
            'retrieve the key's content
            lResult = RegQueryValueEx(hKey, strValueName, 0, 0, ByVal strBuf, lDataBufSize)
            If lResult = 0 Then
                'Remove the unnecessary chr$(0)'s
                RegQueryStringValue = Left$(strBuf, InStr(1, strBuf, Chr$(0)) - 1)
            End If
        ElseIf lValueType = REG_BINARY Then
            Dim strData As Integer
            'retrieve the key's value
            lResult = RegQueryValueEx(hKey, strValueName, 0, 0, strData, lDataBufSize)
            If lResult = 0 Then
                RegQueryStringValue = strData
            End If
        End If
    End If
End Function
Function GetString(hKey As Long, strPath As String, strValue As String)
    Dim Ret
    'Open the key
    RegOpenKey hKey, strPath, Ret
    'Get the key's content
    GetString = RegQueryStringValue(Ret, strValue)
    'Close the key
    RegCloseKey Ret
End Function
Sub SaveString(hKey As Long, strPath As String, strValue As String, strData As String)
    Dim Ret
    'Create a new key
    RegCreateKey hKey, strPath, Ret
    'Save a string to the key
    RegSetValueEx Ret, strValue, 0, REG_SZ, ByVal strData, Len(strData)
    'close the key
    RegCloseKey Ret
End Sub
Sub SaveStringLong(hKey As Long, strPath As String, strValue As String, strData As String)
    Dim Ret
    'Create a new key
    RegCreateKey hKey, strPath, Ret
    'Set the key's value
    RegSetValueEx Ret, strValue, 0, REG_BINARY, CByte(strData), 4
    'close the key
    RegCloseKey Ret
End Sub
Sub DelSetting(hKey As Long, strPath As String, strValue As String)
    Dim Ret
    'Create a new key
    RegCreateKey hKey, strPath, Ret
    'Delete the key's value
    RegDeleteValue Ret, strValue
    'close the key
    RegCloseKey Ret
End Sub
Private Sub Command1_Click()
    Dim strString As String
    'Ask for a value
    strString = InputBox("Please enter a value between 0 and 255 to be saved as a binary value in the registry.", App.Title)
    If strString = "" Or Val(strString) > 255 Or Val(strString) < 0 Then
        MsgBox "Invalid value entered ...", vbExclamation + vbOKOnly, App.Title
        Exit Sub
    End If
    'Save the value to the registry
    SaveStringLong HKEY_CURRENT_USER, "KPD-Team", "BinaryValue", CByte(strString)
End Sub
Private Sub Command2_Click()
    'Get a string from the registry
    Ret = GetString(HKEY_CURRENT_USER, "KPD-Team", "BinaryValue")
    If Ret = "" Then MsgBox "No value found !", vbExclamation + vbOKOnly, App.Title: Exit Sub
    MsgBox "The value is " + Ret, vbOKOnly + vbInformation, App.Title
End Sub
Private Sub Command3_Click()
    'Delete the setting from the registry
    DelSetting HKEY_CURRENT_USER, "KPD-Team", "BinaryValue"
    MsgBox "The value was deleted ...", vbInformation + vbOKOnly, App.Title
End Sub
Private Sub Form_Load()
    'KPD-Team 1998
    'URL: http://www.allapi.net/
    'E-Mail: KPDTeam@Allapi.net
    Command1.Caption = "Set Value"
    Command2.Caption = "Get Value"
    Command3.Caption = "Delete Value"
End Sub
#339
1) Para imprimir se hace con el objeto printer

printer.print "texto"

y para lo de imprimir una BD, se más claro, necesitas imprimir la estructura de la BD o los datos de una Tabla

2) si quieres ayuda, pues ayudanos también poniendo el código que tienes.
#340
pues concido que el cliente es quien decide como se ve su programa, pero aparte de eso yo me he enfocado con que en las ventanas puedas moverte si tú lo quieres solo con el teclado sin utilizar tanto el mouse, poner barras de herramientas con teclas de acceso y cosas de esas, ya que eso hace más agil las pantallas de captura de datos.