Newsgroup: it.comp.lang.visual-basic
Titolo: CI RIPROVO......Programmi QB in Visual Basic.....

Ciao a tutti,
ho alcuni piccoli programmi di calcolo scritti un po' di tempo fa in
QuickBasic.
Sono quindi file .bas che ho visto sono considerati da Visual Basic come
dei moduli da utilizzare nelle applicazioni.
Posso riutilizzarli, come moduli, all'interno di una mia applicazione in
Visual Basic creando uno o più form per immettere i dati che verrano poi
utilizzati dai moduli BAS?
Ovviamente dei "vecchi" programmi in QB salverei esclusivamente la parte
relativa all'algoritmo.
Sono alle prime armi in questo campo e quindi ogni buon consiglio sarà
gradito.
Posso anche inviare via e-mail uno di questi vecchi programmi per vedere
come si possa procedere.
Grazie a tutti
Davide
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:8b30b2ea338bef75160...@mygate.mailgate.org...


 ha scritto nel messaggio
news:8b30b2ea338bef75160...@mygate.mailgate.org...

Dubito fortemente la compatibilità piena dei moduli QB (anche parziale),
che VB li veda come moduli penso sia dovuto all'estensione dei file.
Una soluzione, la butto lì col beneficio del dubbio, potrebbe essere
lanciare
le tue routine in QB via file comando BAT (per l'imput/output sui vecchi
programmi) con una shell da VB, ma secondo me ci metti di + che a rieditarti
il tutto
Consiglio spassionato visto che sei alle prime armi con VB e pensi di
rifare la "Facciata" ai tuoi vecchi programmi, parti da 0 fatti
l'interfaccia
utente a tuo piacimento e riedita nel "nuovo linguaggio" le routine.
JKLJKL

 relativa all'algoritmo.
Non vedo perché no. Personalmente mi sembra di ricordare di aver fatto cose
del genere - anzi ne sono sicurissimo, quando uscì vb1 e poi con vbdos/vb2.
Chiaramente dovresti rassettare un po' il codice (dichiarazioni e scopo
delle variabili, rimuovere tutte le eventuali chaimate a lib o obj,
rimuovere tutte le funzioni di display e input da tastiera) ma se -
giustamente - vuoi mantenere solo le funzioni e non l'intera logica del
programma (che ovviamente era procedurale) non mi sembra un'operazione
impossibile. Siccome però dovrai fare un lavoro brutalmente top down,
dipende anche da quanto codice devi tirar su e soprattutto da chi ne è
l'autore (non è banale: se è incasinato, il fatto che l'abbia scritto tu non
ti aiuta molto).
--
rumplestiltskin

 ti aiuta molto).
Fortunamente, i programmi QB di cui parlo non sono enormi e tolto quello
che c'è da togliere e salvando solo l'algoritmo principale non sono poi
molte righe di codice.
Piuttosto, quello che purtroppo ancora non ho capito, essendo alle prime
armi, come inserire nello stesso progetto VB i miei form di immissione
dei dati e il programma BAS "riadattato" in VB.
Puoi darmi qualche suggerimento?
Grazie


 dei dati e il programma BAS "riadattato" in VB.
Lo stesso form puň contenere codice inserito in funzioni (corrispondenti
alle funzioni di QB). Ovvero: il form non contiene solo il codice che
risponde agli eventi, ma anche variabili visibili in tutto il form e
funzioni definite da te.
Se in QB hai codice a livello di modulo (cosa che in VB non č consentita)
semplicemente crei una funzione e sbatti tutto lě (l'equivalente VB č
appunto una Sub Main in un modulo bas, ma puoi tranquillamente mettere una
Sub/Function Pippo nel form e richiamarla da un evento, come il click su un
pulsante o la Load della form).
Se vuoi, invece, puoi mettere tutto il codice QB in un modulo BAS separato
(come anche in QB, VB consente di usare piů moduli). Dichiarando le funzioni
Public (che poi credo sia il default) potrai richiamarle dal form quando ti
servono.
Infine, puoi fare entrambe le cose: mettere parte del codice nel form stesso
e parte (di uso piů generico) in un modulo BAS.
Lo schema di base č all'incirca questo:
Form1:
Form1_Load
- Eventuale inizializzazione della procedura
- Attesa input utente (diciamo che l'utente deve cliccare il pulsante
Command1 dopo aver immesso i dati)
Command1_Click
- Esecuzione della procedura di analisi dei dati immessi e calcolo chiamando
la funzione Pippo
Function Pippo() As boolean
- Qui metterai il codice QB opportunamente adattato
- Il codice chiama funzioni piů generiche per l'elaborazione: queste
funzioni si trovano o nello stesso Form1 o nel modulo BAS
End Function
Module1  (se ti serve):
- Qui dichiari le variabili visibili in tutto il progetto (Public)
- Crei le funzioni di uso generale
--
rumplestiltskin