1
Bases de Datos / Re:SQL Batch Compiler
« en: Julio 15, 2015, 05:35:02 pm »
Si, es economico, hasta para nosotros que estamos en la lona!

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.
'---------------------------------------------------------------------------------------
' Module : mLoadResFont
' Author : Cobein
' Date : 28/10/2011
' Purpose : Load font from resource
'---------------------------------------------------------------------------------------
Option Explicit
Private Declare Function LoadResource Lib "kernel32.dll" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long
Private Declare Function FindResource Lib "kernel32.dll" Alias "FindResourceA" (ByVal hInstance As Long, ByVal lpName As String, ByVal lpType As String) As Long
Private Declare Function SizeofResource Lib "kernel32.dll" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long
Private Declare Function AddFontMemResourceEx Lib "gdi32.dll" (ByVal pvoid As Long, ByVal dword As Long, ByVal DESIGNVECTOR As Long, ByVal pDword As Long) As Long
Private Declare Function CreateFont Lib "gdi32.dll" Alias "CreateFontA" (ByVal pbFont As Long, ByVal cbFont As Long, ByVal E As Long, ByVal O As Long, ByVal W As Long, ByVal I As Long, ByVal u As Long, ByVal S As Long, ByVal C As Long, ByVal OP As Long, ByVal CP As Long, ByVal Q As Long, ByVal PAF As Long, ByVal F As String) As Long
Public Function LoadResourceFont(ByVal sFontName As String) As Long
Dim lResource As Long
Dim lAddress As Long
Dim lSize As Long
Dim lCount As Long
On Error GoTo LoadResourceFont_Error
lResource = FindResource(App.hInstance, sFontName, "TTF") 'Im using TTF with XN resource Editor but you can use RT_FONT
lAddress = LoadResource(App.hInstance, lResource)
lSize = SizeofResource(App.hInstance, lResource)
LoadResourceFont = AddFontMemResourceEx(lAddress, lSize, ByVal 0&, VarPtr(lCount))
On Error GoTo 0
Exit Function
LoadResourceFont_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure LoadResourceFont of Módulo mLoadResFont"
End Function
Private Sub Class_Initialize()
Call sqlite3_init(App.Path & "\")
End Sub
Private Sub Form_Load()
AddNodes "HKCU\AppEvents\Schemes"
AddNodes "HKCU\AppEvents\Schemes\Apps\.Default\Close\.Current"
AddNodes "HKCU\AppEvents\Schemes\Apps\.Default"
AddNodes "HKCU\AppEvents\Schemes\Apps\.Default\AppGPFault\.Current"
AddNodes "HKCU\AppEvents\Schemes\Apps\.Default\.Default\.Current"
End Sub
Private Sub AddNodes(ByVal sData As String)
Dim cColl As Collection
Set cColl = SplitItems(sData)
Insert cColl, Nothing
End Sub
Private Function Insert(ByVal cItems As Collection, ByVal objParent As Node)
Dim objNode As Node
If Not cItems.Count = 0 Then
If objParent Is Nothing Then
For Each objNode In TreeView1.Nodes
If objNode.Text = cItems.Item(1) Then
Set objParent = objNode
cItems.Remove 1
Insert cItems, objParent
Exit Function
End If
Next
Set objParent = TreeView1.Nodes.Add(Text:=cItems.Item(1))
cItems.Remove 1
Insert cItems, objParent
Else
For Each objNode In TreeView1.Nodes
If objNode.Text = cItems.Item(1) Then
If objNode.Parent = objParent Then
Set objParent = objNode
cItems.Remove 1
Insert cItems, objParent
Exit Function
End If
End If
Next
Set objParent = TreeView1.Nodes.Add(objParent, tvwChild, Text:=cItems.Item(1))
cItems.Remove 1
Insert cItems, objParent
End If
End If
End Function
Private Function SplitItems(sData As String) As Collection
Dim svItems() As String
Dim i As Long
Set SplitItems = New Collection
svItems = Split(sData, "\")
For i = 0 To UBound(svItems)
SplitItems.Add svItems(i)
Next
End Function
{
Settings:{
Printer:'LX-300 Cheques' <-Impresora que vamos a utilizar
Font:{FontName: 'Times New Roman',FontSize: 10}, <- Fuente
CustomPaper:{Width: 180, Height:75, Name: 'Cheque'}, <- Formato de papel
Offset:{PosX:0,PosY:0} <- Offset general
}
Lines:{
MONTO:{PosX:645,PosY:5}, <- Pos de cada una de las etiquetas
SUCURSAL:{PosX:440,PosY:43},
DD:{PosX:580,PosY:43},
MM:{PosX:640,PosY:43},
YY:{PosX:780,PosY:43},
CHEQUEANOM:{PosX:200,PosY:65},
IMPORTE1:{PosX:200,PosY:87},
IMPORTE2:{PosX:50,PosY:111}
}
}