Visual Basic 6.0 Consigli, i metadati di carico da una tabella, automatizzare alcune attività banali o ripetitive ...

Sul occasione abbiamo visto la necessità di elencare i metadati per qualsiasi tabella nel nostro database (si conosce il nome del campo, il tipo di dati e lunghezza), per esempio per creare una funzione che mi permette di inserire dati in una tabella . E 'buona pratica di scrivere istruzioni SQL nel codice sorgente per la nostra applicazione, perché è una doppia compilation che causa la perdita di velocità di esecuzione, ma questo esempio può essere preso anche per creare le loro funzioni di comandante chiama il manager di stored procedure inserire dati (nel caso in cui il gestore del database ha il supporto sp Ms. ad esempio SQL Server, MySQL, ecc.)

Codice sorgente scritto in MS Visual Basic 6.0 attaccando un database di Access Ms:

'------------------------------------------------- ---------------------------------------------
'Funzione scritto in MS Visual Basic 6.0 per leggere i dati e metadati
'In ogni tabella che viene passato come parametro ...

Funzione Pubblica Auditar_X (tabella come stringa) come ADODB.Recordset

SQL = "SELECT * FROM" & Table

cn.CursorLocation = adUseClient
Set rs = cn.Execute (SQL)

Settembre Auditar_X = rs

End Function
'Fine della funzione ...

'------------------------------------------------- ---------------------------------------------
'Funzione pistola Function (gioco di parole) per inserire dati nella tabella di oggetti ...

Private Sub cmdAceptar_Click ()
On Error GoTo e

As String Dim ArtTipoDato, art As String
Tabella fioco come stringa, un valore As String
ComillasDobles As String Dim

'Chr (10) = ENTER
'Chr (13) = TAB

ComillasDobles = "" ""
Tabella = "Articoli"
= Valori ComillasDobles & vbTab & vbTab & "VALUES ("
Arte = "SQL =" & ComillasDobles & vbTab & "INSERT INTO" & Tabella & "("

Se Me.ListView1.ListItems (1). Selezionato allora
frmCatDocumentos.Show 1
End If

Se Me.ListView1.ListItems (2). Selezionato allora
'MsgBox "Kardex"
Dim i As Integer

Set rs = Me.Auditar_X (Tabella)

Me.List1.Clear

ArtTipoDato = "Inserire Public Sub" & Tabella & "("

Per i = 0 To rs.Fields.Count
'Rs.Fields Me.List1.AddItem (i) Nome &. "-" & TypeName (rs.Fields (i) il valore.) & "-" & Rs.Fields (i) DefinedSize.
rs.Fields Me.List1.AddItem (i).Nome & "As" e TypeName (rs.Fields (i). Value) & ""

ArtTipoDato = ArtTipoDato & rs.Fields (i). Nome e "As" e TypeName (rs.Fields (i). Value) & ""

Art = Arte & rs.Fields (i). Nome & ""

Se UCase (TypeName (rs.Fields (i). Value)) = "stringa" Allora
I valori = valori & "'" & ComillasDobles & "&" & rs.Fields (i). Nome & "&" & ComillasDobles & "'"
End If

Se UCase (TypeName (rs.Fields (i). Value)) = "DATA" Allora
I valori = valori & "#" & ComillasDobles & "&" & rs.Fields (i).Nome & "&" & ComillasDobles & "#"
'I valori = valori & "#" & rs.Fields (i). Nome & "#"
End If

Se UCase (TypeName (rs.Fields (i). Value)) = "lungo" o UCase (TypeName (rs.Fields (i). Value)) = "DOUBLE" Allora
I valori = valori & "" & ComillasDobles & "&" & rs.Fields (i). Nome & "&" & ComillasDobles & ""
'I valori = valori & "" & rs.Fields (i). Nome & "&"
End If

'Rs.Fields MsgBox (i). Nome
'Rs.Fields MsgBox (i). Value
'MsgBox TypeName (rs.Fields (i). Value)
Next i
End If

'MsgBox ArtTipoDato

ArtTipoDato = Left (ArtTipoDato, Len (ArtTipoDato) - 1)
ArtTipoDato = ArtTipoDato & ")"

Arte = Left (Art, Len (Arte) - 1)
Arte Arte = & ")" & ComillasDobles & "& _"

Valori = Left (Valore, Len (Valori) - 1)
I valori = valori & ")"

Me.lb.Caption = ArtTipoDato & Art & Valori
I valori = valori & "Set rs = cn.Execute (SQL)"
I valori = valori & "End Sub"
Me.Te.Text = ArtTipoDato & Chr (13) & Art & Chr (13) e Valori

Se Me.ListView1.ListItems (3). Selezionato allora
frmCatArticulos.Show 1
End If

Se Me.ListView1.ListItems (4). Selezionato allora
MsgBox "Exit"
End If
e:
Resume Next
End Sub
'------------------------------------------------- ---------------------------------------------

'Questa è la funzione che era in esecuzione il codice precedente ...

Public Sub InsertarARTICULOS (articolo come String, DESCRIZIONE As String,
VENDITORE As String, UMP_C come stringa, UMP_V come stringa,
Long FACTOR_CONVER Come, COSTO_UMC As Double, COSTO_UMV As Double,
PRECIO_V As String, beni come String, USR_CREACION come stringa,
FECHA_HORA_CREACION la data, USR_MODIFICACION come stringa,
FECHA_HORA_MODIFICACION As Date)


SQL = "INSERT INTO ARTICOLI (articoli, recensioni, FORNITORE
UMP_C, UMP_V, FACTOR_CONVER, COSTO_UMC, COSTO_UMV, PRECIO_V,
ACTIVE USR_CREACION, FECHA_HORA_CREACION, USR_MODIFICACION,
FECHA_HORA_MODIFICACION) "& _
"VALUES ('" & SEZIONE "','" & & & DESCRIZIONE "','" & FORNITORE
"','" & & & UMP_C "','" & UMP_V & "'," & FACTOR_CONVER & ""
COSTO_UMC & & "" & COSTO_UMV & "'" & PRECIO_V & "','" & ACTIVE
& & "','" "#,'" USR_CREACION & "',#" & FECHA_HORA_CREACION &
USR_MODIFICACION & & & "',#" FECHA_HORA_MODIFICACION & "#)"
Set rs = cn.Execute (SQL)
End Sub

'Fine della funzione ...

'------------------------------------------------- ---------------------------------------------

Ora siete pronti per essere aggiunti InsertarARTICULOS funzione e chiamare da qualsiasi punto del programma. Tiep tanto ci ha portato a ottenere il InsertarARTICULOS SECONDI funzione direi che e quanto tempo ci vorrebbe per scrivere sul piede, che direi ..... minuti



Related Posts

Visual Basic 6.0 Consigli, i metadati di carico da una tabella, automatizzare alcune attività banali o ripetitive ... - 2011-12-05 02:17

Sul occasione abbiamo visto la necessità di elencare i metadati per qualsiasi tabella nel nostro database (si conosce il nome del campo, il tipo di dati e lunghezza), per esempio per creare una funzione che mi permette di inserire dati in una tabella . E 'buona pratica di scrivere istruzioni SQL nel codice sorgente per la nostra applicazione, perché è una doppia compilation che causa la perdita di velocità di esecuzione, ma questo esempio può essere preso anche per creare le loro funzioni di comandante chiama il manager di stored procedure inserire dati (nel caso in cui il gestore del database ha il supporto sp Ms. ad esempio SQL Server, MySQL, ecc.)

Codice sorgente scritto in MS Visual Basic 6.0 attaccando un database di Access Ms:

'------------------------------------------------- ---------------------------------------------
'Funzione scritto in MS Visual Basic 6.0 per leggere i dati e metadati
'In ogni tabella che viene passato come parametro ...

Funzione Pubblica Auditar_X (tabella come stringa) come ADODB.Recordset

SQL = "SELECT * FROM" & Table

cn.CursorLocation = adUseClient
Set rs = cn.Execute (SQL)

Settembre Auditar_X = rs

End Function
'Fine della funzione ...

'------------------------------------------------- ---------------------------------------------
'Funzione pistola Function (gioco di parole) per inserire dati nella tabella di oggetti ...

Private Sub cmdAceptar_Click ()
On Error GoTo e

As String Dim ArtTipoDato, art As String
Tabella fioco come stringa, un valore As String
ComillasDobles As String Dim

'Chr (10) = ENTER
'Chr (13) = TAB

ComillasDobles = "" ""
Tabella = "Articoli"
= Valori ComillasDobles & vbTab & vbTab & "VALUES ("
Arte = "SQL =" & ComillasDobles & vbTab & "INSERT INTO" & Tabella & "("

Se Me.ListView1.ListItems (1). Selezionato allora
frmCatDocumentos.Show 1
End If

Se Me.ListView1.ListItems (2). Selezionato allora
'MsgBox "Kardex"
Dim i As Integer

Set rs = Me.Auditar_X (Tabella)

Me.List1.Clear

ArtTipoDato = "Inserire Public Sub" & Tabella & "("

Per i = 0 To rs.Fields.Count
'Rs.Fields Me.List1.AddItem (i) Nome &. "-" & TypeName (rs.Fields (i) il valore.) & "-" & Rs.Fields (i) DefinedSize.
rs.Fields Me.List1.AddItem (i).Nome & "As" e TypeName (rs.Fields (i). Value) & ""

ArtTipoDato = ArtTipoDato & rs.Fields (i). Nome e "As" e TypeName (rs.Fields (i). Value) & ""

Art = Arte & rs.Fields (i). Nome & ""

Se UCase (TypeName (rs.Fields (i). Value)) = "stringa" Allora
I valori = valori & "'" & ComillasDobles & "&" & rs.Fields (i). Nome & "&" & ComillasDobles & "'"
End If

Se UCase (TypeName (rs.Fields (i). Value)) = "DATA" Allora
I valori = valori & "#" & ComillasDobles & "&" & rs.Fields (i).Nome & "&" & ComillasDobles & "#"
'I valori = valori & "#" & rs.Fields (i). Nome & "#"
End If

Se UCase (TypeName (rs.Fields (i). Value)) = "lungo" o UCase (TypeName (rs.Fields (i). Value)) = "DOUBLE" Allora
I valori = valori & "" & ComillasDobles & "&" & rs.Fields (i). Nome & "&" & ComillasDobles & ""
'I valori = valori & "" & rs.Fields (i). Nome & "&"
End If

'Rs.Fields MsgBox (i). Nome
'Rs.Fields MsgBox (i). Value
'MsgBox TypeName (rs.Fields (i). Value)
Next i
End If

'MsgBox ArtTipoDato

ArtTipoDato = Left (ArtTipoDato, Len (ArtTipoDato) - 1)
ArtTipoDato = ArtTipoDato & ")"

Arte = Left (Art, Len (Arte) - 1)
Arte Arte = & ")" & ComillasDobles & "& _"

Valori = Left (Valore, Len (Valori) - 1)
I valori = valori & ")"

Me.lb.Caption = ArtTipoDato & Art & Valori
I valori = valori & "Set rs = cn.Execute (SQL)"
I valori = valori & "End Sub"
Me.Te.Text = ArtTipoDato & Chr (13) & Art & Chr (13) e Valori

Se Me.ListView1.ListItems (3). Selezionato allora
frmCatArticulos.Show 1
End If

Se Me.ListView1.ListItems (4). Selezionato allora
MsgBox "Exit"
End If
e:
Resume Next
End Sub
'------------------------------------------------- ---------------------------------------------

'Questa è la funzione che era in esecuzione il codice precedente ...

Public Sub InsertarARTICULOS (articolo come String, DESCRIZIONE As String,
VENDITORE As String, UMP_C come stringa, UMP_V come stringa,
Long FACTOR_CONVER Come, COSTO_UMC As Double, COSTO_UMV As Double,
PRECIO_V As String, beni come String, USR_CREACION come stringa,
FECHA_HORA_CREACION la data, USR_MODIFICACION come stringa,
FECHA_HORA_MODIFICACION As Date)


SQL = "INSERT INTO ARTICOLI (articoli, recensioni, FORNITORE
UMP_C, UMP_V, FACTOR_CONVER, COSTO_UMC, COSTO_UMV, PRECIO_V,
ACTIVE USR_CREACION, FECHA_HORA_CREACION, USR_MODIFICACION,
FECHA_HORA_MODIFICACION) "& _
"VALUES ('" & SEZIONE "','" & & & DESCRIZIONE "','" & FORNITORE
"','" & & & UMP_C "','" & UMP_V & "'," & FACTOR_CONVER & ""
COSTO_UMC & & "" & COSTO_UMV & "'" & PRECIO_V & "','" & ACTIVE
& & "','" "#,'" USR_CREACION & "',#" & FECHA_HORA_CREACION &
USR_MODIFICACION & & & "',#" FECHA_HORA_MODIFICACION & "#)"
Set rs = cn.Execute (SQL)
End Sub

'Fine della funzione ...

'------------------------------------------------- ---------------------------------------------

Ora siete pronti per essere aggiunti InsertarARTICULOS funzione e chiamare da qualsiasi punto del programma. Tiep tanto ci ha portato a ottenere il InsertarARTICULOS SECONDI funzione direi che e quanto tempo ci vorrebbe per scrivere sul piede, che direi ..... minuti


OOP - Object Oriented Programming - 2011-12-05 02:17

Negli ultimi 35 anni, le società di progettisti hardware del computer sono state progettando di grandi attrezzature per computer portatili basati su microprocessori.

In questo stesso periodo, gli sviluppatori di software sono passati da scrivere in assembler per scrivere programmi in C o C + +. Chiaramente, il mondo dello sviluppo software non sta procedendo veloce come il mondo hardware. Quindi la domanda importante è, quali sono le   progettisti hardware agli sviluppatori di software non lo fanno?

La risposta a questa domanda sta nel modo di lavorare progettisti hardware, usano componenti e sistemi sviluppati per formare il loro hardware.

Il riutilizzo dei componenti è anche un metodo per creare un software migliore.Oggi gli sviluppatori di software ricominciare da zero e seguire la stessa procedura che ha portato molti programmatori in passato. La creazione di nuovi sistemi da componenti esistenti che sono già stati testati, tende sempre a produrre codice più affidabile. Inoltre, ha dimostrato di essere più veloci e più economici.

Tra il 1970 e il 1990, gli analisti di software sviluppato e orientato approcci oggetto per il 1994 aveva più di 50 metodi degli oggetti. Tuttavia, solo 3 metodi raggiunto la popolarità:

  • Rumbaugh OMT metodo
  • Metodo BOOCH'93 Booch
  • Jacobson OOSE metodo

Nel 1994, Rumbaugh,   Booch Jacobson e nel 1995 ha unito le forze per sviluppare la definizione del linguaggio UML (Unified Modeling Language), che definisce un linguaggio standard incorporando i vantaggi dei diversi metodi precedenti.  

Programmazione orientata agli oggetti Oggi è influenzato non solo i linguaggi di programmazione, ma anche l'analisi e la progettazione di un dato sistema, compresi i sistemi di gestione di base sono orientati dati oggetto come PostgreSQL (DBMS open source-oriented oggetti).

Tutto questo progresso ha preso questa tecnica è dovuto alla capacità ampia e vantaggi della programmazione strutturata contro.

Alcuni vantaggi che hanno questo modo di programmazione:

1.        Promuove il riutilizzo del codice e l'estensione.

2.        Consente di creare sistemi complessi di più.

3.        Gestisce mettere in relazione il mondo reale.

4.        Facilita lo sviluppo di programmi di visuale.

5.       Prototipazione

6.        Snellisce lo sviluppo di software

7.Facilita il lavoro di squadra

8.        facilita notevolmente la manutenzione del software

Poi mostra la lista di programmazione orientata agli oggetti lingue:

Molti di questi linguaggi di programmazione non sono puramente object-oriented, ma sono degli ibridi che combinano OOP con altri paradigmi.

Come in C + + altri linguaggi, come OOCOBOL , OOLISP , OOPROLOG eObject REXX , sono stati creati con l'aggiunta di estensioni a object-oriented classico linguaggio di programmazione.


Immediata pulito in Visual Studio.NET 2005 Console - 2011-12-05 02:17

Beh, non solo l'uomo vive Java. Ogni tanto devo lavorare. NET per alcuni progetti specifici e una volta ho trovato qualcosa che mi ha causato qualche mal di testa con il Visual Studio 2005. Questo strumento offre una console in cui eseguire il dump dei dati di debug, che può essere disabilitato nelle opzioni ma è di solito molto utile. Lo svantaggio di questo strumento è che si può pulire la console con il comando Console.Clear (), a quanto pare questa ordinanza non si applica alla finestra immediatamente.

In questo progetto ha dovuto mostrare qualche informazione quando è stato costretto in modalità debug, così ho cercato di trovare una soluzione. Il più veloce e sporco (quick and dirty) che ho ottenuto è stato questo:

Creare una classe che contiene il codice seguente:

using System; using System.Runtime.InteropServices; namespace nsClearConsole {/ / /  / / / Descrizione di riepilogo per ClearConsole. / / / 
public class {private const int ClearConsole STD_OUTPUT_HANDLE = -11;const private byte VUOTO = 32; [StructLayout (LayoutKind.Sequential)] {struct COORD pubbliche a breve x, y pubblici a breve;} [StructLayout (LayoutKind.Sequential)] struct {pubbliche a breve Sinistra SMALL_RECT; pubblico breve Top; pubbliche a breve destro; pubbliche a breve il basso;} [StructLayout (LayoutKind.Sequential)] {struct COORD pubblico dwSize CONSOLE_SCREEN_BUFFER_INFO; pubblico dwCursorPosition COORD; wAttributes public int; srWindow pubblico SMALL_RECT; pubblico dwMaximumWindowSize COORD;} [DllImport ("kernel32.dll", EntryPoint = "GetStdHandle "SetLastError = true, charset = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] private static extern int GetStdHandle (nStdHandle int) [DllImport (" kernel32.dll ", EntryPoint =" FillConsoleOutputCharacter ", SetLastError = true, charset = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] private static extern int FillConsoleOutputCharacter (hConsoleOutput int, byte cCharacter, nLength int, COORD dwWriteCoord, int ref lpNumberOfCharsWritten) [DllImport ("kernel32.dll", EntryPoint = "GetConsoleScreenBufferInfo", SetLastError = true , charset = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] private static extern int GetConsoleScreenBufferInfo (hConsoleOutput int, ref CONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo) DllImport [("kernel32.dll", EntryPoint = "SetConsoleCursorPosition", SetLastError = true, charset = CharSet . Auto, CallingConvention = CallingConvention.StdCall)] private static extern int SetConsoleCursorPosition (hConsoleOutput int, COORD dwCursorPosition) hConsoleHandle private int; pubblico ClearConsole () {/ / / / TODO: aggiungere qui la logica di costruzione. / / HConsoleHandle = GetStdHandle (STD_OUTPUT_HANDLE);} public void Clear () {hWrittenChars int = 0; CONSOLE_SCREEN_BUFFER_INFO strConsoleInfo CONSOLE_SCREEN_BUFFER_INFO = new ();COORD Home; Home.x Home.y = = 0; GetConsoleScreenBufferInfo (hConsoleHandle, ref strConsoleInfo) FillConsoleOutputCharacter (hConsoleHandle, vuoto, * strConsoleInfo.dwSize.y strConsoleInfo.dwSize.x, Home, hWrittenChars ref) SetConsoleCursorPosition (hConsoleHandle, Home );}}}

Più tardi, nella parte in cui abbiamo bisogno per pulire la console deve richiamare il seguente frammento, che crea un'istanza della classe e quindi chiamare ClearConsole metodo chiaro, che è finalmente pulito la console.

ClearConsole ClearConsole cs = new (); cs.Clear (); 

Infine, dato che a parlare fin dall'inizio che questo hack non si applica alle immediate console da Visual Studio 2005, dobbiamo dire una console programma che gira in MS DOS per l'hack di lavoro:

# Se DEBUG ConsoleEx.AllocConsole (); # endif 

Questo dovrebbe essere il modulo o classe di inizio del progetto di codice che stiamo sviluppando. Infine, si deve anche avere la classe per assegnare o rilasciare la console.Così in una classe a sé dovrebbe mettere il seguente codice:

using System; using System.Runtime.InteropServices; public static class ConsoleEx {[DllImport ("kernel32.dll"] public static extern AllocConsole Boolean (); [DllImport ("kernel32.dll")] public static extern FreeConsole Boolean () ;} 

A quel tempo sufficiente per avere una console di MS DOS per il debug di tempo abbiamo pulito. Così qui è nel caso qualcuno ne abbia bisogno. L'esempio è in C # ma immagino che quelle correntemente in Visual Basic. NET in grado di adattarsi. La soluzione è stata presa in parte dal seguente Microsoft KB .


MONO progetto, la realizzazione della piattaforma OpenSource. NET - 2011-12-05 02:17

Nei primi mesi del 2001, la società di Ximian di mano di Miguel de Icaza (messicano sviluppatore di software libero. Tra i suoi contributi è il fondamento del progetto GNOME, il file del driver o file di Midnight Commander, Gnumeric, il modello di componente Bonobo ) guida il progetto Mono come una implementazione open source di Microsoft e plataforma.Net standard ECMA. L'obiettivo era di fornire una piattaforma software libero per facilitare lo sviluppo di applicazioni per Linux.

Nel gennaio 2003, Novell Ximian acquisto e dà il suo sostegno a Miguel de Icaza a procedere con il progetto Mono, impiega attualmente circa 20 ingegneri da Novell e hanno aiutato più di 300 volontari.

C # è parte della piattaforma.
Net pacchetti che compongono la distribuzione della piattaforma Mono ha un compilatore C #, una macchina virtuale (che consente l'esecuzione di applicazioni), e un insieme di librerie di classi che forniscono migliaia di funzioni.

Mono applicazioni possono essere scritte in linguaggi di programmazione, tra cui tra cui Python, Object Pascal, Nermele, e C #. Una volta che le applicazioni scritte sono tradotte in CIL (Common Intermediate Language), che è un linguaggio intermedio non è specifico per ogni architettura. Una volta compilato in attuazione CIL traduce il linguaggio specifico dell'architettura finale, che verrà eseguito. Questo sistema può distribuire un programma unico binario per tutte le architetture, invece di un programma specifico per ogni piattaforma. Mono ora offre gli strumenti per costruire applicazioni per Linux, Solaris, Windows, Mac / OS mainframe, e IBM. A differenza dei programmi tradizionali che vengono eseguiti direttamente sul sistema, i programmi in esecuzione su piattaforma Mono implementazione di un ambiente controllato, noto come Virtual Machine

Mono fornisce le funzioni necessarie per creare tecnologia web servizi che include XML, SOAP, ASP.NET e Remoting e accesso alle banche dati tramite ADO.NET, tipo Oracle, MySQL, DB2, SQL Server, o il progresso. Con queste librerie possono portare Windows o servizi sviluppati nel nostro iscritto proprio come in grado di usare il server web Apache. Per lo sviluppo di interfacce utente per le applicazioni client sono diverse opzioni. Da un lato fornisce un'implementazione open source di System.Windows.Forms (facoltà prevista da Microsoft) per gli sviluppi fatti nel grembiule. Nette su Windows può essere eseguito su altre piattaforme come Linux o Mac OS. GTK # fornisce inoltre una libreria che espone tutte le funzionalità dell'ambiente Gnome grafico che permette di applicazioni cross-platform.

Io personalmente consigliamo due IDE gratuito per lavorare con Mono:

  • MonoDevelop su Linux
  • In Windows SharpDevelop


controllo SSTab andare un Visual Basic 6.0 - 2011-12-05 02:17

Ad un certo punto nella nostra vita come sviluppatori di applicazioni desktop abbiamo visto la necessità di raccogliere informazioni sulle schede (Ms. SSTab Control Visual Basic 6.0), ma abbiamo avuto qualche difficoltà o disattivare (abbiamo fatto scheda, scheda), con Quindi per evitare questa situazione di nuovo, qui ci sono un tipo di funzione in MS Visual Basic 6.0 che abilita o disabilita le schede di controllo SSTab.

Questa funzione viene chiamata Activar_Desactivar_Pestanas, e riceve come parametri Porta (per attivare le schede) o False (per disattivare le schede) e il nome della scheda di controllo.

Public Sub Activar_Desactivar_Pestanas (Enable As Boolean, Pestana Come SSTab)

   

Per i = 0 To Pestana.Tabs - 1

Se Attiva Poi

Pestana.TabEnabled (i) = True

Altro

Pestana.TabEnabled (i) = False

        End If

Prossimo

   

End Sub

Con questa funzione e possibile utilizzare un controllo SSTab con qualsiasi numero di schede e selezionare o deselezionare in pochi secondi, non è più necessario scrivere molte righe di codice per attivare o disattivare come schede di controllo.


Visual Basic 6.0 Consigli: riempire un ListView - 2011-12-05 02:17

Quando un programmatore sviluppa una applicazione (desktop o web) dovrebbe pensare l'utente finale, è abituato a certe finestre (interfaccia), una qualche forma di lavoro (per esempio i ragionieri utilizzare Invio molto di più del mouse), allora il ragione è che esso dovrebbe includere alcune caratteristiche che gli utenti finali sono abituati a vedere.

In Microsoft Excel 2003, vediamo la XXX seguente finestra che mostra quando si preme il tasto destro del mouse / Inserire il nome di un foglio di lavoro. Quindi in questo esempio, ho simulato questa finestra.

Questo esempio fa parte di un sistema di banca dati. L'idea è che l'utente può selezionare: DOC. ALTRO (per lavorare con documenti), Kardex (per vedere il movimento di un articolo) o master voce (per i nostri oggetti propri dati), una volta selezionata, premere il pulsante OK.

In questo esempio si utilizza Microsoft Visual Basic 6.0 linguaggio di programmazione e, soprattutto, i seguenti controlli:
1 ListView (per visualizzazione delle immagini.)
1 ImageList (per la memorizzazione delle immagini).

CODICE SORGENTE PER LA COMPILAZIONE ListView
Private Sub Form_Load ()
As ColumnHeader column_header
Come list_item ListItem Dim
Value = ""
Country = ""
'Crea le intestazioni delle colonne.
Column_header = ListView1 settembre. _
ColumnHeaders.Add (,, "Abbrev", _
TextWidth ("ALTRI DOCUMENTI"))
Column_header = ListView1 settembre. _
ColumnHeaders.Add (,, "Titolo", _
TextWidth (KARDEX "))
Column_header = ListView1 settembre. _
ColumnHeaders.Add (,, "ISBN", _
TextWidth ("MASTER OF ART"))
Column_header = ListView1 settembre. _
ColumnHeaders.Add (,, "ISBN", _
TextWidth ("EXIT"))
ListView1.Icons = imgLarge
Settembre ListView1.ListItems.Add list_item = (,, "DOC. VARIE)
list_item.Icon = 1
list_item.SmallIcon = 1
list_item.SubItems (1) = "Ready-to-Run Visual Basic Algoritmi"
list_item.SubItems (2) = "0-471-24268-3"
Settembre ListView1.ListItems.Add list_item = (,, "KARDEX)
list_item.Icon = 2
list_item.SmallIcon = 2
list_item.SubItems (1) = "Visual Basic programmazione grafica"
list_item.SubItems (2) = "0-471-15533-0"
Settembre ListView1.ListItems.Add list_item = (,, "Articolo Master")
list_item.Icon = 3
list_item.SmallIcon = 3
list_item.SubItems (1) = "Custom Controls"
list_item.SubItems (2) = "0-471-24267-5"
Settembre ListView1.ListItems.Add list_item = (,, "EXIT")
list_item.Icon = 4
list_item.SmallIcon = 4
list_item.SubItems (1) = "Advanced Visual"
list_item.SubItems (2) = "0-471-18881-6"
End Sub

Codice sorgente per il DOWN listview VOCE

Private Sub cmdAceptar_Click ()
On Error GoTo e

Se Me.ListView1.ListItems (3). Selezionato allora
frmCatArticulos.Show 1
End If
'......
e:
Resume Next
End Sub


Visual Basic Tips, costruire una dinamica in cui, in Visual Basic - 2011-12-05 02:17

L'idea di questo articolo è quello di mostrare come creare una clausola WHERE dinamico, quindi se si dispone di un modulo con due caselle di testo (NoCliente, clientname) e un pulsante di comando di filtro (per eseguire la query di selezione), quindi se la utente digitato qualcosa in una delle scatole in la 'dove solo chiedere un cambio di campo se ha scritto in entrambe le caselle di testo in la', dove poi viene chiesto da entrambi i campi.

Questo codice sorgente è lasciato alla costruzione del 'dove' dinamica.

Private Sub cmdFilter_Click ()

    Con Me

        Filter = ""

        Se. TxtNoCliente.Text <> "" Then

            Filter "=" CLIENT = &. TxtNoCliente.Text

        End If

        Se. TxtNombre.Text <> "" Then

            Se il filtro <> "" Then

                Filter = & Filtro "e il nome LIKE '" &. TxtNombre.Text & "%'"

               Altro

                  Filter = '"Filter &" NOME LIKE &. TxtNombre.Text & "%'"

            End If

        End If

    End With

    'Invia per eseguire la query

End Sub


Aggiungere una colonna in un Ms. FlexGo Visual Basic 6.0 - 2011-12-05 02:17

Questo esempio è utile per esempio quando si vogliono visitare le celle contenute in una colonna per la ricerca di un dato particolare, aggiungere o sottrarre valori. Ho usato nello sviluppo di sistemi di fatturazione al momento di voler ottenere il totale parziale della fattura.

Questa funzione è SumarSubTotales nome, restituisce un valore doppio (il risultato della somma), riceve 2 parametri (il nome di un Flex che renderà il viaggio e un numero (col) che indica che la colonna è che essere aggiunto.

Funzione SumarSubTotales (flex Come MSFlexGrid, col As Integer) As Double

  Con Flex

    i = 2 To. Per le righe - 1

        = + Sott sott TextMatrix. (-. Righe i, COL)

    Next i

  End With

  SumarSubTotales = Round (, sott 2)

End Function


Java Suggerimenti: Classe per calcolare differenza tra due date - 2011-12-05 02:17

Questa classe ha dato il suo amico Armando Alaniz. È una classe per calcolare differenza tra due date e molto esplicito nel loro uso per sé. Poi il codice:

importazione java.util.Calendar;
import java.util.Date;

/ **
* @ Autore Armando J. Alaniz Aragona
* @ Dal 20090312
* @ Version 1.0
* /
DateUtil {public class finale
public static ultimo anno int = 0;
pubblico MESE static int finale = 1;

privato getDateDiffInYears static int (startDate Data, Data endDate) {
getDateDiffInMonths ritorno (startDate, endDate) / 12;
}

privato getDateDiffInMonths static int (startDate Data, Data endDate) {
StartCal calendario = Calendar.getInstance ();
EndCal calendario = Calendar.getInstance ();
StartY int = -1, startMonth = -1;
int endYear = -1, endMonth = -1;
mese int = 0;
Fattore di int = 1;

if (startDate.after (endDate)) {
= fattore -1;
startCal.setTime (endDate);
endCal.setTime (startDate);
Else {}
startCal.setTime (startDate);
endCal.setTime (endDate);
}

StartY = startCal.get (Calendar.YEAR)
startMonth = startCal.get (Calendar.MONTH) + 1;
endYear = endCal.get (Calendar.YEAR)
endMonth = endCal.get (Calendar.MONTH) + 1;

if (StartY endYear ==) {
mesi = endMonth - startMonth;
Else {}
mesi = 12 - startMonth;
mesi + = endMonth;
- EndYear;
if (endYear - StartY> 0) {
mesi + = (endYear - StartY) * 12;
}
}
*= mesi fattore;
ritorno mesi;
}

pubblico getDateDiff static int (campo int, startDate Data, Data endDate) {
if (campo == ANNO) {
getDateDiffInYears ritorno (startDate, endDate);
} Else if (field == MESE) {
getDateDiffInMonths ritorno (startDate, endDate);
Else {}
return 0;
}
}
}


Advertising

Facebook comments:

Advertising

Related Categories: