mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.vo-clipper
Titolo: CLIP4WIN

Devo dare Subito un aspetto windows alle mie applicazioni mi hanno
consigliato CLIP4WIN.
Va bene?
Dove comprare la Libreria, e dove reperire manuali in italiano ?
Grazie
Ver...@foxnet.it

 Va bene?
Io ti consiglio Fivewin (
www.fivetech.com
). Se opti per quest'ultima poi
fatti sentire qui per qualsiasi aiuto.
EMG

In cosa è superiore fivewin rispetto a clip4win ?
filippo
Enrico Maria Giordano ha scritto:


 In cosa è superiore fivewin rispetto a clip4win ?
Quando la esaminai io (alcuni anni fa) era una libreria che faceva solo
da wrapper per le API di Windows. Non so se ora è cambiata ma le Fivewin
hanno sempre offerto un ricco (e ormai maturo) framework di classi che
consentono un risparmio di tempo incredibile rispetto alla
programmazione API diretta.
EMG

non sono un programmatore professionista, quindi il tuo parere è sicuramente
piu' autorevole.
io ho visto fivewin 1.9.2 (di omicron) e clip4win 3.0  .. versioni a
pagamento non demo ..
ora mi pare che siano molto simili anche per quanto riguarda le classi.
clip4win ha una bella documentazione cartacea che l'altra non ha. Non ti so
dire di fivewin (versione fivetech) e non ho nemmeno capito bene perchè
esistano due fivewin.
Sai per caso se con  fivewin per harbour sia possibile  portare applicazioni
clipper sotto x-windows di linux?
comunque grazie la tua attenzione
filippo

 clipper sotto x-windows di linux?
Linux è una delle piattaforme direttamente supportate nel pacchetto in
distribuzione. Non so se, al momento, sia gestito anche l'ambiente
grafico (ma sicuramente è nei progetti). Attualmente esiste per lo meno
la versione delle Fivewin per Harbour completamente compatibile con
quella per Clipper (altro motivo per utilizzare le FW e non le
Clip4Win).
EMG

 ha scritto nel messaggio
news:NrQZ5.96080$hk4.3...@news.infostrada.it...


 la gestione dell'interfaccia grafica?
si

visto che siamo in argomento...
si dice che xbase++ abbia diversi bugs che ne pregiudicano un po' il
funzionamento.
tu lo hai verificato ?
grazie
filippo


Bene. Comunque sono arrivate ben in ritardo rispetto alle FW...
EMG

 FiliBard wrote:

dal 1995 almeno

FiliBard ha scritto:

La versione 1.5 sembra molto piu' stabile, probabilmente ci sono
ancora diversi bugs ma niente che pregiudichi il lavoro.
Ciao...
Claudio Driussi
http://www.swit.net/csoft
mailto:
cldr...@swit.net

 ha scritto nel messaggio
news:3A3D3DDD...@tin.it...

Newsgroup: it.comp.lang.vo-clipper
Titolo: Scusatemi permesso?

No ragazzi qui si fa una grande confusione:
Vo e Clipper non sono la stessa cosa, hanno è vero molte funzioni in comune
e una sintassi simile ma sono e restano due cose diverse.
Ha ragione Enio quando dice che ci sono due sistemi operativi, io non
capisco come si possa non programmare ad oggetti sotto Windows, lo ha capito
pure la Microsoft, l'ultimo VB comuncia ad introdurre gli oggetti. ( ed
anche il repository).
Ho usato fivewin qualche anno fa, funzionava, fino al momento che il
programma non andava im mano all'utente finale, il quale sbattendosene
altamente dei principi della programmazione procedurale, apriva e chiudeva
finestre come ridere e prima o poi il programma andava in crash. Con la OOP
questo non avviene mai.
Il repository e poi il principio della sicurezza, se poi volglio i file
ascii posso esportarlo come prg.
Certo all'inizio è dura ma poi vai veloce.
Per quanto riguarda SQL e DB permettetemi di dire, ho fatto molta esperienza
con SQL, che anche qui sono due cose diverse destinate a usi diversi.
Usereste i DBF per un archivio di milioni di record, credo di no, come non
useresti SQL per 10.000 record.
Dipende dal lavoro da fare e l'obbiettivo da raggiungere.
Se so di dover gestire grosse mole di dati in sicurezza uso SQL, se faccio
un programma per il negozzietto sotto casa uso SQL.
E non mi venite a dire che c'è qualcuno che usa i DBF con milioni di record,
perchè posso rispondere che c'è anche chi usa ancora il calesse, è
pittoresco, ma niente di più.
Scusate la mia franchezza ma tutta la discussione mi ricorda tanto la volpe
e l'uva.
Danilo Giuliani

 E non mi venite a dire che c'è qualcuno che usa i DBF con milioni di record,
No, per me un limite tranquillo e ragionevole si aggira attorno ai
100.000 record ma, senza pretendere ricerche sequenziali, fino ad un
milione ci si può arrivare (con le macchine attuali, ovviamente).
EMG

Il mondo è bello perchè ognuino può avere le proprie opinioni
Danilo Giuliani

Il mondo č bello perchč ognuino puň avere le proprie opinioni
In questo caso mi sembra piů appropriato:
Il mondo č bello perchč ognuno puň avere le proprie FANTASIE, e
ignorare le OPINIONI degli altri !!!
Newsgroup: it.comp.lang.vo-clipper
Titolo: aiuto urgente

buon giorno,
ho dovuto ripristinare w10.
Adesso uando creo una nuova classe vo28 non me la riconosce.
Creo che dipenda dalle variabili d'ambiente.
Potete aiutarmi ?
Grazie
Aurora Baccio

Buon giorno Aurora,
 
normalmente VO non dovrebbe essere sensibile a questo - le ultime volte
che ho cambiato macchina ho copiato soltanto le cartelle.
 
È il compilatore che non riconosce più le classi?
 
Per prima cosa farei un "Reindex Project", se questo ancora non è
sufficiente, ricompilerei tutto il progetto, e se ancora non basta,
esporta tutte le applicazioni, crea un nuovo progetto e importa tutto.
Con il VO Productivity Pack è fatto velocemente (e sui progetti
importanti con tanto movimento lo faccio circa due volte all'anno per
velocizzare).
 
Saluto
 
Wolfgang

-- 
 


Buon giorno signor Riedman,
semplicemente sono andata nel panico e ho dimenticato le basi di VO.
Come sempre la ringrazio per la sua risposta ma ho scambiato un mio errore per un malfunzionamento.
È stato comunque un piacere risentirla
Aurora Baccio
Newsgroup: it.comp.lang.vo-clipper
Titolo: Report Pro

Report Pro mi piace anche se mi fa arrabbiare, provo le stesse sensazioni
che provavo all'epoca con il clipper 5.2 e le sue
nuove (rispetto al Summer 87)  tbrowse getsys etc. etc. le soddisfazioni
sono state molte.
Probabilmente con Vo e Report pro le soddisfazioni saranno ancora più
grandi.
Io vi domando questo:
Il seguente metodo viee lanciato da un print server il quale permette di
stampare cose carine da utenti CLIPPER-DOS .
Stampa correttamente e molto velocemente ma non riesco a cambiare la
stampante su cui stampare, eppure passo il parametro sPrintId e do il
oPtrDevice:SetPrinterByName(sPrintId)
In altre parole il parametro sPrintId contiene il nome della stampante su
cui stampare
METHOD EseguiStampa ( sUtente, sReport, sSeekExp, sPrintId, sNomeFIle,
sNome, sMessaggio, sCopie ) CLASS scheda
 LOCAL oReport     AS RpReport
 LOCAL oPtrDevice  AS PtrDevice
 LOCAL aPrinters AS ARRAY
 LOCAL nlp AS SHORTINT
 LOCAL oTabella AS RpRDDTable
 LOCAL mSeekExp AS STRING
 LOCAL cPrinterName AS STRING
 mSeekExp := "'" + sSeekExp + "'"
  oPtrDevice := PtrDevice{SELF, oReport}
  oPtrDevice:SetPrinterByName(sPrintId)
  oPtrDevice:Copies := sCopie
 oReport := RpReport{SELF,"H:\HS\RPPRO\"+RTrim(sReport) +".RPT"}
  IF oReport:IsValid    // se mi blocco qui con il debugger e chiedo il
valore di oPtrDevice:PrinterName mi da quella che effettivamente passo
                                     //
     oReport:SeekExpression := mSeekExp
     oReport:WhileExpression := "la.Bol_lav = " + mSeekExp
     oReport:Connect2Source()
     oReport:Print(sReport, sNomeFile, sMessaggio, "Attendere stampa in
corso..", TRUE)
  ENDIF
 oReport:Close()
 oDCTxtEsecuzione:Caption := "Fine esecuzione "
 RETURN NIL
Chi mi dà una dritta avanza un caffè

 wrote in message
7j8qms$l3h$1...@fe1.cs.interbusiness.it...


Dove posso acquistare Report Pro e che costo ha.
http://www.dproinc.com/
Costo:
Report pro Standard 2 $99.00 (US)
Report pro Professional $249 (US)
La versione professional consente di iserire l'editor nel programma.
Ignazio
More than 90 HiRes images in my home page  
http://www.geocities.com/~puddu/

Report Pro 2 č Un Gran Software
----------------------------------------------------------------------
Long Life to VO
----------------------------------------------------------------------

 Dove posso acquistare Report Pro e che costo ha.
Open Team di Milano, io l'ho preso lě
www.openteam.it

Dove posso acquistare Report Pro e che costo ha.

Newsgroup: it.comp.lang.vo-clipper
Titolo: checkbox in un browser

qualcuno può darmi una dritta su come inserire un checkbox in una colonna di
un databrowser legato ad un campo di tipo logico?
ringrazio anticipatamente

 wrote in message
7jmklk$t27$1...@hermes.iol.it...

Scusa l'approssimazione (poi casomai controllo e ti faccio sapere) ma ci
sono degli esempi del caso nei file dell'ultimo technicon sull'ftp CA

Io visualizzo semplicemente una X se il campo è TRUE, modificando le
proprietà della colonna
Block                    { |o| iif(o:Server:L_Maschio=TRUE,"X","") }
Block Owner         SELF


Newsgroup: it.comp.lang.vo-clipper
Titolo: comando vo appenddelimited

Devo importare un file CSV in un database.
il file ha come separatore il ; mentre il comando appenddelimited di default utilizza la ,
 
vorrei sapere come faccio ad inserire nel comando il ;
 
seguendo le isruzioni dovrebbe essere cosi server:appenddelimited(<nomefile>,[delimiter])
 
ora io ho provato nei seguenti modi :
 
oserver:appenddelimited(nomefile,';')
 
oserver:appenddelimited(nomefile,'hex(3B)')
 
oserver:appenddelimited(nomefile,'chr(;)')
 
 
ma il risultato è sempre quello. importa il primo campo poi un ; poi l'ultimo campo
 
Probabilmente sto annegando in un bicchier d'acqua qulcuno per cortesia mi può indicare la strada giusta?
 
Ringrazio anticipatamente chi mi potrà aiutare.
 
 
 
 
P.s. naturalmente se nel file CSV sostituisco il ; con la , scrivendo
 
oserver:appenddelimited(nomefile) i dati entrano che è una meraviglia.

 oserver:appenddelimited(nomefile) i dati entrano che � una meraviglia.
 
 
 
--
Newsgroup: it.comp.lang.vo-clipper
Titolo: VO Ricerca ad oggetti

Ciao a tutti quei pochi che sono rimasti a casa.
Mano a mano che entro sempre più in VO vedo con piacere che è sempre più
facile progredire.
Non sempre però il linguaggio ad oggetti mi è chiaro come quello in
Clipper.
Per esempio in clipper io avevo implementato una ricerca che poteva
trovare una parola o parte di essa contenuta in un campo .
Detta ricerca l'avevo sviluppata partendo da una funzione di ricerca
della super lib.
Non riesco però a trasformarla in linguaggio ad oggetti puro.
Qualcuno mi può aiutare a capire come posso implementare una ricerca ad
OGGETTI con vo del tipo sopra descritto? Possibilmente veloce?
Grazie.
Paolo

puoi usare i metodi locate o Setfilter della classe DBServer (sono
abbastanza veloci perche usano dei CodeBlock !!!)
eccoti un esempio :   il metodo cerca nel campo DESCRIZIONE del server del
Browser
oSFAppuntiBrowseWindow la frase scritta in mDescrizione
method ButtonCerca class appuntiwindow
         LOCAL oAppunti  := Appunti{} AS Appunti   // DBServer
         LOCAL Filtro := "" AS STRING
         LOCAL  CBFiltro  AS  STRING
      IF   mDescrizione  != NIL    // se la variabile di ricerca è piena
          Filtro += "AT('"+AllTrim(mDescrizione)+"' ,DESCRIZION) != 0"
      ENDIF
     CBfiltro :=  "{ ||"+filtro+"}"
    oSFAppuntiBrowseWindow:Server:LOCATE(&CBFiltro)   // browser
 IF  oSF_AppuntiBrowseWindow:Server:EOF
  Tone(800,3)
  oSF_AppuntiBrowseWindow:Server:GoTop
ENDIF
RETURN NIL
spero di esserti stato utile
ciao
Enio



Ci sono diversi modi. Dovresti dirci come era implementata quella che
usavi in Clipper per poterla trasfromare a oggetti.
Comunque, l'unica cosa che dovrebbe cambiare e' che dove in Clipper
usavi l'alias del File, in VO usi l'oggetto che lo contiene. Es.:
CLIPPER:    pippo->(DBSeek(valore))
VO:                 oPippo:Seek(Valore)
Fabio
Newsgroup: it.comp.lang.vo-clipper
Titolo: HorizontalScroll in ListBox

Sarà capitato anche a voi a dover comprimere le dimensioni (in larghezza)
di una ListBox pur dovendola popolare con stringhe più lunghe della
larghezza stessa. 
La barra di scorrimento orizzontale, nonostante l'impostazione a True
della proprietà di stile "disable if no scroll", funziona solamente in
caso di Multi Column. 
Nel libro-bibbia "Alla scoperta di CA-Visual Object" viene riportato:
" ..... Una Horizontal ScrollBar abilitata può essere aggiunta alle
ListBox a singola colonna, ma deve essere fatto via codice." 
Finisce così, senza esempi nè altro. Ho provato nel PostInit a mettere:
Self:oDCLBListBox1:HorizontalScroll(true) ma non funziona. 
Vi siete mai imbattuti in questa problematica ? suggerimenti ?
Grazie,
Alessio Bernardini
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio 
news:i6nqui$2aq$1...@news.newsland.it...

--- news://
freenews.netfront.net/
 - complaints: 
ne...@netfront.net
 ---

Metti questa riga nel postinit.
SendMessage( oDCSele:Handle(),;// Windows handle
			LB_SETHORIZONTALEXTENT,; // Listbox message
			nWidth,;				// max riga
			0L )
Ciao Antonio

 Ciao Antonio
Prefetto, Funziona !
Grazie Antonio, ho aggiunto proprio questa istruzione nel PostInit:
SendMessage(self:oDCLBElenco1colonna:Handle(),LB_SETHORIZONTALEXTENT,250,0
)
Ciao,
Alessio


 Alessio
Scusa/scusate, mi viene in mente un'altra domanda:
si può aggiungere una Horizontal scrollbar in una ComboBox ?
Grazie,

Newsgroup: it.comp.lang.vo-clipper
Titolo: Recno

Qualcuno sa spiegarmi come utilizzare la funzione recno?
in particolare debbo numerare dei record
e pensavo di sostituire ad un campo specifico il risultato di recno
ma mi restituisce 0 provando con ?
grazie dei consigli
Francesco D'Aquila

 ma mi restituisce 0 provando con ?
ogni funzione si riferisce ad una workarea (concetto Clipper). Nel Tuo 
caso definerei una sottoclasse soprascrivendo access/assign Recno e 
metodo GoTo
class fDbserver inherit DBServer
access Recno class fDBServer
    return self:FieldGet( #Numero )
 
...
Saluti da Merano 
Wolfgang
 
 

ma mi restituisce 0 provando con ?
Puoi mettere due righe di esempio, cosi' capiamo meglio il problema?


Solitamente non uso molto i numeri di record, tranne per poche
funzioni, ma provo a fare un esempio.
Hai un archivio che si chiama ANAFOR (un classico)
Se scrivi ? ANAFOR->(RecNo())
avrai il numero di record corrente dell'archvio ANAFOR.
Ciao.Alberto.
-------------------------------------------------------------
Alberto Rubinelli           Mail : 
alb...@retrocomputing.net
A2 SISTEMI                  Http : 
www.retrocomputing.net
Via Costantino Perazzi 22   Tel 0321 640149
28100 NOVARA (NO) - ITALY   Fax 0321 391769
ICQ : 49872318              Odigo : 5269083

 avrai il numero di record corrente dell'archvio ANAFOR.
Probabilmente Francesco si riferiva al VO. In Clipper, comunque, puoi
scrivere anche semplicemente RECNO() e ti dà il numero di record
corrente nell'area corrente. Però bisogna ricordare che i numeri di
record possono cambiare dopo un PACK.
EMG
PS. Sì, lo so: ho detto tutte banalità...
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

corrente nell'area corrente. 
Anche in VO.

record possono cambiare dopo un PACK.
Si, verissimo, infatti se posso evito proprio di usarlo.


 ha scritto nel messaggio
news:Ppk08.10438$pm3.3...@news1.tin.it...


Newsgroup: it.comp.lang.vo-clipper
Titolo: protezione

Qualche suggerimento per proteggere sorgenti clipper 5.2e dai
decompilatori?
Gradite anche e-mail
Un saluto.
W.Moretto

 W.Moretto
--
by(e) Doriano.
E-MAIL: doria~N~o@skyli~N~
k.it
PS: sostituisci  ~N~ con n per rispondere...
Newsgroup: it.comp.lang.vo-clipper
Titolo: Modifica struttura di un DBF

Ho un .EXE in Clipper che apre (USE) un dbf. Se aggiungo dei campi al dbf il 
programma EXE dà un errore strano quando fa la USE: " Corruption detected". 
Ero convinto che potesse funzionare lo stesso.Qualcuno può darmi una 
spiegazione in merito? Grazie in anticipo.

 ha scritto nel messaggio 
news:dumq72$890$1...@area.cu.mi.it...


 Ciao Alessandro
Ti ringrazio, ma in tale programma non uso gli indici, in quanto devo 
semplicemente leggere tuttti i record del DBF. 



Se, come hai detto in un altro messaggio, non ci sono indici allora mi viene 
in mente solo che tu possa aver usato, per modificare la struttura del DBF, 
uno strumento incompatibile con Clipper.
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg
The EMG Music page:         
http://www.emagsoftware.it/emgmusic
 

 si riferisce agli indici NTX.
No, si può riferire anche ad altri tipi di file o addirittura a nessun file. 
Il nome del file eventualmente corrotto si può leggere nella variabile 
Filename dell'oggetto Error lanciato durante l'eccezione.


Grazie del suggerimento, effettivamente la struttura è stata modificata con 
un altro strumento.
Ma si può e se si come, aggiungere un campo tramite DBU ? 

 Ma si puň e se si come, aggiungere un campo tramite DBU ?
Certo che si puň: apri il file e poi premi F3 Create -> Database.


Si, ma una volta andato su Create, vedo tutti i campi, ma non so come 
aggiungerne altri 

 aggiungerne altri
Vai in fondo oppure premi INS.


Grazie
Newsgroup: it.comp.lang.vo-clipper
Titolo: [CL] - Come proteggere i dati di una applicazione?

In un server Netware presso un cliente ci sono tra le altre cose i dati
del mio programma scritto in Clipper.
Per far sì che un utente possa usare il programma gli si deve dare la
possibilità di vedere la cartella contenente i files e che il diritto di
accesso della suddetta cartella sia: Read, Write, Delete.... Altrimenti
il programma non può funzionare.
Al di fuori del mio programma un utente può sfogliare la rete,
individuare la cartella contenente i dati ed aprire una tabella DBF con
Excel, Word, Norton Commander etc. etc.
Modificare i dati cancellarli o copiarli.
Mi hanno fatto questa osservazione e non so cosa fare per assicurare che
non siano possibili
queste operazione sugli archivi del programma.
Chi ha una soluzione?
Sinceramente non mi era mai capitato un cliente con questi problemi di
mancanza di fiducia nei propri collabortori. Purtroppo esistono.

 ha scritto nel messaggio
news:392B8413...@hardservice.it...


queste operazione sugli archivi del programma.
Premesso che se uno vuole fare danni prima o poi ci riesce, una via
semplice e veloce potrebbe essere (la sparo :-)) quella di ridefinire
le estensioni dei files cosě da evitare l'apertura "accidentale" dei
files da altri software.
Altrimenti una ipotetica sarebbe di aggiungere un account sul server,
chiedere la password dal tuo programma che poi effettua il login e la
mappatura del disco.
Questa perň č un'ipotesi, ma si sa'...che non si sa' mai ;-)))
Antonello.

 Antonello.

 con un altro comando rights gli si tolgono i diritti su quella cartella.
Che accade se l'applicazione termina in modo imprevisto?
(semplice curiosita'...)
--
by(e) Doriano.
E-MAIL: doria~N~o@skyli~N~
k.it
PS: sostituisci  ~N~ con n per rispondere...
        To reply, replace ~N~ with n

 con un altro comando rights gli si tolgono i diritti su quella cartella.
Però se i diritti rimangono attivi per tutta la durata dell'applicazione
allora nel frattempo l'utente non potrebbe andare a smanettare con i DBF
ormai resi accessibili?
EMG

 


ormai resi accessibili?
certo che se si potessero assegnare i diritti di accesso ai singoli
task sarebbe una vera goduria, ma immagino non si possa fare.
mumble mumble, questo punto richiede un po' di riflessione...
Antonello.

Newsgroup: it.comp.lang.vo-clipper
Titolo: Presentazioni meeting a Bolzano

Ciao a tutti,
 
ho appena messo i powerpoint delle mie presentazioni sul mio sito:
 
https://riedmann.it/download/Differenze_VO_XS.pptx
 
https://riedmann.it/download/WPF_Code_Driven_P1_ita.pptx
 
 
Saluti
 
Wolfgang
 
-- 
 









Ciao ragazzi , la mia potete scaricarla dal sito X#:


 


https://www.xsharp.info/itm-downloads?folder=general%252FLessons


 


Danilo


 


"Wolfgang Riedmann"  ha scritto nel messaggio 
news:fp8lh9...@mid.individual.net... 

Newsgroup: it.comp.lang.vo-clipper
Titolo: VALKIRIE

Ho scaricato dal sito :
http://www.terminal-impact.com
, gentilmente
segnalatomi su questo NG, il programma Valkirie V5 v.beta.
Quando lancio il programma mi chiede la "serial number".
Chi saprebbe indicarmi come procedere per reperire questa "serial number" ?
Qualcuno, vermante, già me ne accennò però non trovo più il suo msg.
Grazie per le indicazioni già fornitemi e per quelle che mi farete avere.
Romano

 Romano
--
by(e) Doriano.
E-MAIL: doria~N~o@skyli~N~
k.it
PS: sostituisci  ~N~ con n per rispondere...

Newsgroup: it.comp.lang.vo-clipper
Titolo: Treeview e menu

 
Cerco qualche esempio, anche elementare di gestione di un menu con 
l'utilizzo di Treeview e realtivo lancio di almeno una procedura. Se 
qualcuno può darmi una mano lo ringrazio in anticipo veramente tanto.
Mario Summa 

 ha scritto nel messaggio
news:e54kqq$5f7$1...@fata.cs.interbusiness.it...


 ha scritto nel messaggio 
news:44764b13$0$18290$4faf...@reader1.news.tin.it...


qualcuno puň darmi una mano lo ringrazio in anticipo veramente tanto.
prendi l' EXPLORER SAMPLE di VO per vedere come si carica una treeview
da DBF.
Dopodichč non ti resta che intercettare l'evento, esempio:
METHOD TreeViewMouseButtonDoubleClick(oTreeViewMouseEvent) CLASS
<window>
	SUPER:TreeViewMouseButtonDoubleClick(oTreeViewMouseEvent)
	//Put your changes here
	if oTreeViewMouseEvent:TreeViewItem:NameSym = #MiaFinestra
		MiaFinestra{self}:show()
	else
		..altro..
	endif
	RETURN NIL
Antonello
___________________________________
Antonello Negrone
Biella - Italy
http://www.anc-software.it
S.P.E. client/server engine for Visual Objects,
it runs remote-objects on any TCP/IP connection.

Newsgroup: it.comp.lang.vo-clipper
Titolo: campi blob e Mysql

non ho mai usato i campi blob... come si usano e in che modo si può 
memorizzare una immagine utilizzando un database mysql?
grazie
Giuseppe Marino 

 wrote in message 
news:nxeBf.60054$eD5.9...@twister2.libero.it...


 ha scritto nel messaggio 
news:nxeBf.60054$eD5.9...@twister2.libero.it...

Dipende dal tipo di approccio che usi per interfacciare Vo e Mysql, Odbc, 
librerie esterne, Fab o altro.
Ciao.
                        Francesco

Newsgroup: it.comp.lang.vo-clipper
Titolo: sqlite

Salve.
Girovagando per la rete ( 
www.sqlite.org
 )  mi sono imbattuto in questo
database.
Mi è parso interessante in quanto - nel mio caso - permetterebbe di
abbandonare i DBF senza passare ad un qualcosa di eccessivamente
sovradimensionato.
Ho trovato anche un'installazione per win di driver ODBC.
Qualcuno di voi lo conosce un po' meglio? ha provato ad interfacciarlo a VO?
TIA
riccardo

L'ho scaricato anch'io, per poterlo interfacciare a VO, ma l'ho
lasciato perdere quando ho letto che non gestisce la multi-utenza.
Antonello


Perchè non provi ad usare MySQL ?
E' molto semplice da installare e gestire, è free (per uso personale e
all'interno della tua azienda), inoltre puoi usarlo con VO tramite
i tradizionali ODBC oppure in modo diretto tramite le librerie di Giuliani
(
www.softdevo.com
 )
io mi trovo molto bene !!!
Enio Donci
Newsgroup: it.comp.lang.vo-clipper
Titolo: La finestra di un modulo in V.O. 2.7b. che non stà in primo piano  con windows 10

Salve a tutti,
da un menu di base viene lanciato un modulo di un processo. Questo processo anzicché rimanere in primo piano come sarebbe logico, si chiude sulla riga di stato del sistema unitamente al menu principale del programma. Questo anche se apparentemente non grave, è scocciante per un operatore, dover riprendere tutte le volte il modulo e lavorarci ... conoscete qualche soluzione che possa evitare questo spiacevole inconveniente ?? 
Grazie per ogni suggerimento utile. 
Mario Summa

Salve,
 
purtroppo possono esserci tanti motivi per questo comportamento come
possono esserci varie possibilità di soluzione.
 
Quanto dura questo processo? Esiste un box che fa vedere il progresso?
 
Wolfgang

-- 
 

Ciao Wolfgang, grazie per la risposta. Il modulo deve ricevere degli input dall'operatore dunque deve stare in primo piano, sul menù sottostante. Questo con Windows.10 non avviene, poiché al lancio del modulo, sia il modulo che il menù sono posti dal sistema sulla barra di stato da dove, basta poi cliccare e tutto si apre ( menù e finestra di input).  Si crea di fatto un passaggio in più che da fastidio è che non so come evitare. Mi puoi aiutare ? Grazie. Mario Summa

 
 
owner della window ?
 
*Massimo Bighelli* ARCA Sistemi S.r.l.

Ciao Mario,
 
questo comportamento lo vedi su tutti i PC con Windows 10?
 
Penso che ci sia un altro processo che si mette davanti perchè un
comportamento simili non lo ho mai visto nei miei programmi.
 
Comunque ha la possibilità di mettere il tuo programma davanti a tutti
gli altri:
 
LockSetForegroundWindow( 2 )
SetForeGroundWindow( nPtrEF )
 
dove nPtrEF è la handle della tua finestra.
 
Io uso questo processo regolarmente per mettere in avanti la finestra
di un altro programma.
 
Wolfgang

-- 
 

Grazie Wolfgang, per il tuo suggerimento che proverò in giornata . Mi confermi solo la posizione, che se non rammento male, vanno messe ne metodo init della finestra interessa. Ancora geazie per la tua disponibilità. 
Mario Summa

Ciao Mario,
 
devi provare..... potrebbe essere che vada bene nella Init(), come
potrebbe essere che funziona meglio nella Show().
 
Wolfgang

--
Newsgroup: it.comp.lang.vo-clipper
Titolo: Oracle

Devo lavorare con un database Oracle (leggere e scrivere record)
Qualcuno ha esperienza ?
Utilizzo VO 2.5. Grazie a tutti.
Alessandro.

 ha scritto nel
messaggio news:Hp4ca.53030$pG1.1...@news1.tin.it...


Newsgroup: it.comp.lang.vo-clipper
Titolo: MSDN Originale Vendesi

Vendo i seguenti numeri di MSDN Library Originali:
-MSDN July 2000 (3 CDs) 70.000 lire
-Component Source MSDN 10/99 Edition (1 CD) 6.000 lire
-Component Source MSDN 04/2000 Edition (1 CD) 8.000 lire
-MSDNnews (opuscolo) January/February 2000 4.000 lire
Component Source MSDN e MSDNnews se associati a un numero di MSDN Library a
metà prezzo.
Spese di spedizione a carico del destinatario.
Scrivete a 
fran...@yahoo.it


idem come sopra ?
Ciao
Aldo

 -MSDN July 2000 (3 CDs) 70.000 lire
Lo so che rompo le uova nel paniere, ma, per chi ne ha i requisiti, la
versione educational per un anno costa circa 80.000 lire.
Ciao
Aldo

Approposito di MSDN lo sapete che se avete una versione Professional di
qualchè strumento di sviluppo
(anche quelle per gli studenti)
 avrete per un anno l'abbonamento gratis? A library ovviamente!

Vendo i seguenti numeri di MSDN Library Originali:
-MSDN July 2000 (3 CDs) 70.000 lire
-Component Source MSDN 10/99 Edition (1 CD) 6.000 lire
-Component Source MSDN 04/2000 Edition (1 CD) 8.000 lire
-MSDNnews (opuscolo) January/February 2000 4.000 lire
Component Source MSDN e MSDNnews se associati a un numero di MSDN Library a


 versione educational per un anno costa circa 80.000 lire.
Non rompi assolutamente nulla, figurati! Non sapevo di questa promozione,
grazie per avermi avvertito! Cosě non vi scoccio piů se riesco a limitare i
costi, no?
Ciao e TNX

 ha scritto nel messaggio
news:932dur$na$1...@nread2.inwind.it...

azz. a me non è mai arrivato niente!
ho l'educational
--
Ciuaz©,
H0m3r S1mps0n
h0m3r_...@iol.it
----------------------------------------
Fammi un favore, ogni tanto clicca qui:
http://7.ebsd.com/z/e?acct=hackzx
----------------------------------------
Fuck the FreeConnect [Not 4 All]

 CiuazŠ,



E' capitato anche a me, bisogna chiamare il numero verde MSDN e menargliela un 
po', dopo 5 mesi ci sono riuscito.
Inoltre l' offerta viene rinnovata periodicamente, quindi si continua a girare 
con MSDN aggiornati in continuo
Dav
Newsgroup: it.comp.lang.vo-clipper
Titolo: HELP Report Pro 3 Runtime

Come faccio a  dire al Runtime di report pro 3 da quale directory prendere i
dati?
Grazie
Carlo Russo


Puoi usare gli appositi metodi di ReportPro.
Ad esempio, se hai definito durante la creazione del report  una tabella
chiamata "QUAD", a run time puoi cambiare il nome della tabella da aprire,
come anche l'indice ed il tag se usi i CDX
oReport:SetTableStringAttribute(1,"QUAD",TABLE_ATTR_DRIVER,"DBFCDX")
oReport:SetTableStringAttribute(1,"QUAD",TABLE_ATTR_TABLE,sNomeDatabase)
     oReport:SetTableStringAttribute
oReport:SetTableStringAttribute(1,"QUAD",TABLE_ATTR_INDEX_FILE,sNomeIndiceCD
X")
P.S. sNomeDatabase contiene il nome completo di path esempio
"c:\Pippo\Pippo.Dbf"
Ciao.
Roberto Cordini

 oReport:SetReportStringAttribute(RPT_ATTR_DFLT_DATA_PATH , cPAth)
Ciao.
                    Francesco Leo

 ha scritto nel messaggio
news:c4hdbh$2hsg7u$1...@ID-83669.news.uni-berlin.de...


 ha scritto nel messaggio
news:c4hhb5$as3$1...@fata.cs.interbusiness.it...


Newsgroup: it.comp.lang.vo-clipper
Titolo: Kodak Imaging

Qualcuno sa dirmi dove posso trovare l'SDK di imaging o qualcosa di
analogo? Se non sbaglio il file si chiama imgocxd.hlp.
Grazie.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:90c1372c39d15def6e8...@mygate.mailgate.org...


Newsgroup: it.comp.lang.vo-clipper
Titolo: Futuro del VO

Provate a guardare in questo indirizzo internet:
http://www3.ca.com/Solutions/Overview.asp?ID=1651&TYPE=S
secondo voi può essere interpretato come un fatto positivo per il futuro del
VO ?
Ciao,
    Fabrizio Malaguti
p.s.
La notizia l'ho tratta dal NG comp.lang.clipper.visual-objects

Mah... io penso sempre positivo fino a prova contraria, la CA
(international) realizzň un ottimo prodotto che perň non ha mai tenuto in
considerazione per quello che si meritava. Ma gli oltre 300.000 (si.... dico
trecentomila !!!) attuali sviluppatori VO nel mondo hanno fatto sě che piano
piano essa si stia ricredendo
Newsgroup: it.comp.lang.vo-clipper
Titolo: [vo-report]- libreria lli32.dll

Salve a tutti,
Ho da sottoporVi il presente dilemma:
Ho un programma che utilizza il report generation 2.7 e che mi funziona
egregiamente in ambiente di programmazione.
Ho installato il programma su di un PC con Window '95 e Sorpresa !!! le
immagini con i testi delle stampe che vedevo e stampavo perfettamente in
ambiente di programmazione (Window '98 s.e.) nonsi vedono più ora in questo
PC mi stampa solo i testi !! e in fase di elaborazione e stampa, mi mostra
una finestra in cui vedio un triangolo giallo con punto esclamativo, due
punti(:) e sotto il nome di una dll (LLI32.dll) re relativo tasto per
proseguire. Ovviamente se proseguo(Fase obbligata) il programma stampa e/o
mostra solo il testo della stampa escludendo i disegni o le BMP nel testo
contenute.
Ho notato che, se la stampa contiene più disegni o bmp,  ciascuno di essi,
mostra il messaggio di cui sopra.
Ora, dopo vari tentativo di capire cosa accade, e avendo fatto numerosi
buchi nell'acqua !!!, passo la palla al News sperando che qualcuno mi aiuti
a capire.
Ho anche verificato che la fase di preparazione alla installazione del
programma fosse correttamente effettuata... come di fatto ho constatato..
Perchè mi mostra un messaggio incompleto ??? Come posso far si che il
messaggio sia leggibile???
Perchè non mi stampa le immagini e che funzione svolge tale libreria che
normalmente e situata in una directory del rpt 2.7 e non mi risulta che in
fase di installazione venga coinvoltà !!! ????
Grazie a chiunque possa darmi un aiuto al riguardo.
Resto in attesa
Mario D. SUMMA

fase di installazione venga coinvoltà !!! ????
LLI32.DLL (Light Lib) è proprio la libreria che si occupa della
grafica e da quanto ho provato è indispensabile per stampare Bmp
con ReportPro.
Consulta la guida di ReportPro, c'è una sezione che elenca i files da
includere a seconda se usi grafica o no.
Antonello.

Ciao Mario :
Penso che oltre a LLI32.DLL sarebbe meglio che tu includessi anche LLB32.DLL
(per i diagrammi a torta istogrammi ecc...) ed LLO32.DLL
non te le dimenticare mai quando fai i dischetti di installazione !!!
Tra poco tempo uscirà l'articolo sulla roba che mi hai dato.ù
Adesso sono trasferito all'accademia navale di livorno e devo dire che VO
sta facendo pulizia di piccoli "programmi" realizzati con ACCESS e altro.
Inoltre entusiasma anche gli "esperti" di MainFrame tantoché  mi hanno
chiesto se si può interfacciare con ORACLE ... naturalmente si ed anche in
maniera diretta senza ODBC vedi
http://www.electricpeople.com/VO2Oracle_ProductOverview.htm
non ho ancora il telefono in sede perché sono ...errante per adesso.
Se vuoi telefonami al Cellulare
Ciao
Enio
Newsgroup: it.comp.lang.vo-clipper
Titolo: Lettera dalla CA

Ciao a tutti,
qualche giorno fa, Oskar Schneider della VOCA, aveva inviato una
lettera alla CA per chiedere informazioni ufficiali sul futuro di VO.
Ebbene, la CA gli ha risposto, ecco il messaggio *pescato* dal NG
internazionale.
Il sito della VOCA, per chi non lo sapesse è
www.vocager.de
Saluti
=============================================================================
Dear VOers,
Today CA responded to our letter. The response came from Yogesh Gupta,
CAs
Chief Technology Officer.
Here is a summary:
1.    He understands the loyalty of the VO community
2.    CA has always had a positive dialog with the VO community.
3.    There will be an announcement at CA World with regard to
direction of
VO. Yogesh thinks, the user community will welcome that direction.
If you want more information that, you will just have to wait till
next
week.
Oskar Schneider
[VOCA Germany]
===============================================
Antonello Negrone - Biella - Italy
anto...@anc-software.it
www.anc-software.it

Ottimo !!!
So che si sta muovendo qualcosa di interessante riguardo a VO, dato il
"fiasco" che sta per fare Jasmine chissą che CA non si butti su VO.

 ha scritto nel messaggio
news:IhDv8.2065$8D3....@news1.tin.it...


Mah ... non è proprio un fiasco completo, il guaio è che la CA come al
solito non fa pubblicità ai suoi prodotti, preferisce andare nelle aziende e
fare meeting ecc...
I motivi del cosidetto "fiasco" sono molteplici ma i seguenti mi sembrano
quelli più importanti :
-   supporto tecnico = molto scarso
-   corsi  =  molto pochi
-   facilità d'uso =  molto ridotta
-   manualistica in italiano = assente
-   esperti = molto molto pochi !
So che diverse ditte hanno tentato di usarlo ma a lungo andare hanno
lasciato perdere !!!
Queste sono le notizie che ho avuto sentendo un pò in giro.
Sinceramente sono un pò amareggiato perché le premesse erano più che ottime
... una rivoluzione nel mondo dei DB, però se viene gestita in questo modo
andrà poco lontano
Ciao
Enio

Newsgroup: it.comp.lang.vo-clipper
Titolo: Windows XP e Clipper 5.2

Clipper 5.2 è compatibile con Windows XP
cioè posso compilare senza nessun problema?
O devo configurare qualcosa?
Grazie!

 O devo configurare qualcosa?
Non mi pare di aver configurato niente.
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

Newsgroup: it.comp.lang.vo-clipper
Titolo: diventa PRANOTERAPEUTA !!!

*PRANICWORLD*, che ti venga la diarrea cronica.

 Per info e prenotazioni 
http://pranika.supereva.it
e stì cazzi?
-- 
Non bastano tutti i cammelli del deserto per comprarsi un amico.
Newsgroup: it.comp.lang.vo-clipper
Titolo: VO - DataWindow o DialogWindow

Ciao a tutti,
qualcuno ha segnalato che per aumentare la velocità di VO è sufficiente
abbandonare la classe datawindow ed usare in sostituzione la dialogwindow.
Prima di fare esperimenti o di modificare tutto il codice, qualcuno ha già
provato e quindi è in grado di dirmi:
- se ne vale effettivamente la pena ?
- se anche nella versione 2.5 è meglio non usare la datawindow?
Ciao e buon VO

- se anche nella versione 2.5 č meglio non usare la datawindow?
Interesserebbe anche a me. In effetti le mie finestre sono un po
pesanti da aprire (coi tab e' una mezza tragedia).
Ignazio
More than 90 HiRes images in my home page  
http://www.geocities.com/~puddu/

Il problema č proprio una datawindow con parecchie tab


Il problema č proprio una datawindow con parecchie tab
Io ho una datawindow con 7 tab e per aprirla ci vogliono 7 secondi con
un celeron 300a (sono una marea di campi). Ho ridotto enormemente i
tempi di caricamento riempendo i combobox con degli array globali
invece che da dbserver. Mi leggo i dbf con i contenuti dei combobox
una volta per tutte all'inizio del programma e non se ne parla piu'.
Molto piu' veloce. Qualcuno ha altri suggerimenti?


 - se anche nella versione 2.5 è meglio non usare la datawindow?
Ho una voglia di mettere le mani sulla 2.5...........
Saluti,
Antonello.





- se anche nella versione 2.5 è meglio non usare la datawindow?
La Datawindow e' piu' lenta della dialogwindow semplicemente perche'
fa una marea di cose in piu'. Per esempio apre in automatico il file,
gestisce le notifiche, legge e scrive direttamente le variabili o i
campi del file, eccetera.
Se usate una dialogwindow tutte queste cose non ci sono.
Se pero' dovete simulare una datawindow con una dialogwindw, le dovete
gestire manualmente, aumentando il codice da scrivere (e queindi gli
errori!!), e, alla fine, ottenendo piu' o meno la stessa velocita'.


Tieni conto che ogni tab e' una finestra che deve essere aperta.
Piu' tab hai, piu' finestre devi aprire, piu' lenta e' l'apertura.


Un'altra cosa che puoi fare per accelerare l'apertura delle finestre
e' di mettere 'Generate code' a false per tutti i controlli che non
devi manipolare da programma (es.: fixedtext, groupbox, ecc).
In questo modo diminuisci il codice da eseguire e aumenti la velocita'
di apertura.


Io uso una datawindow principale con i vari server aperti, mentre i tab
(datawindow) gestiscono solo variabili bufferizzate.




 wrote in message
7jajul$dia$1...@nslave1.tin.it...

Newsgroup: it.comp.lang.vo-clipper
Titolo: [VO] WIN2000 e FieldSpec editor

Ciao a tutti
Scusatemi se ripropongo il mio tormentone di questi giorni
VO25a1 + Win2000 prof. : FieldSpec editor non salva più, ma va
inesorabilmente in errore, e ciao VO.
A qualcuno è per caso successo lo stesso, o ha sentito qualcosa in merito?
Sto cercando SP1 per win2000 (86Mb circa... non intendo scaricarlo da
internet), forse è stato pubblicato sul CD di qualche rivista?
Grazie a chi volesse rispondere.
:-(
Massimo
ARCA Sistemi S.r.l.
Modena

 ha scritto nel messaggio
news:8pm1d0$9sg$1...@nslave1.tin.it...


 wrote in message
8pm1d0$9sg$1...@nslave1.tin.it...


 ha scritto nel messaggio
news:8pooda$6tq$1...@nslave2.tin.it...


Newsgroup: it.comp.lang.vo-clipper
Titolo: limiti del Dbase

Chiedo scusa, vorrei una risposta a questo quesito.
Sto usando un progr sotto DOS , che usa il Dbase III.
Editando il campo "memo", ossia scrivendo delle note in formato testo, quale
è la quantità massima di dati possibile da immagazzinare in un record ?
Ossia, quando il dbase memorizza nel campo memo il testo digitato da me,
quanto ce ne sta al massimo ? In pratica, si può calcolare il numero massimo
di fogli  a cui corrisponderebbe se stampo su A4 con l'edit di MS-DOS?
Spero che qualcuno mi risponda.
Grazie per l'attenzione.
Franco

 di fogli  a cui corrisponderebbe se stampo su A4 con l'edit di MS-DOS?
basta contare il numero di CRLF presenti nel testo e dividere tale numero
per le righe/pagina del tuo foglio A4

 di fogli  a cui corrisponderebbe se stampo su A4 con l'edit di MS-DOS?
il calcolo è semplice: 80 colonne (78 se stampi su una laser) per 70 righe, 
non contando eventuali margini non stampabili.
Saluti
Wolfgang
Merano

 ha scritto nel messaggio
news:S50p9.31601$cS4.1...@news2.tin.it...


L'Hw che utilizzi è così vecchio che non riesci ad usare qualche cosa di
meglio del vecchio e glorioso dBASEIII?
Sai da come usi pesantemente i campi memo mi sembra limitativo l'uso dello
stesso campo memo.
Usando il dBASE e non altro farei un bel modi stru dell'archivio e
aggiungerei se non esiste già un campo che contenga una chiave univoca.
Lo scopo è di lanciare l'edit.exe e editare un file esterno alla struttura
anzichè un campo memo, l'effetto è lo stesso.
dal prompt del dbase scrivi
create command prova
e scrivi
cFile = STR(recno(),8)
oppure
cFile = <campochiave> ad esempio cFIle = codice
run edit &cFile
e il gioco è fatto.
Ciao

 di fogli  a cui corrisponderebbe se stampo su A4 con l'edit di MS-DOS?
Se consideriamo una pagina strapiena di 80 colonne per 66 righe abbiamo
5280 caratteri per pagina. Quindi in totale potrai memorizzare circa 12
pagine per record, forse qualcosa di più visto che normalmente le pagine
non sono "strapiene".
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

 A4 piene di caratteri , ma si considerano caratteri anche gli spazi vuoti ?
Sě, gli spazi prodotti con la barra spaziatrice. Le righe vuote
(ottenute semplicemente premendo Invio ad inizio riga) contano, invece,
per un paio di caratteri soltanto.

Newsgroup: it.comp.lang.vo-clipper
Titolo: CASE per VO

Ciao a tuuti
Ho utilizzato DBSee per sviluppare una applicazione con il Clipper 5.x e
purtroppo sono rimasto molto poco contento (anzi quasi inc......) che la ISA
non supporti VO per il
DBSee++.
Colgo quindi l'occasione per chiedere in giro se esiste un CASE Per VO
Saluti e come direbbe Stan "L'Uomo" Lee
EXCELSIOR :-)
Claudio Di Nucci

 wrote in message
7jakd7$g0m$1...@nslave1.tin.it...


Che mi risulti la ISA aveva anche il Dbsee++ per VO!
Antonello


VO (es. Metodi aggiuntivi sulle datawindows, ecc.).
C'e' un CASE per VO fatto in italia. Si chiama Visual Data e potete
trovarlo su 
http://www.mpm.it/bertuzzi
 

 Antonello
Solo per VO 1.0c

Newsgroup: it.comp.lang.vo-clipper
Titolo: VO - Problema con backgroun pulsanti

Ho uno strano problema con dei pushbutton.
Ho creato a runtime una serie di pushbutton utilizzando la classe 
Hoverbutton. Durante la creazione assegno un background secondo alcune 
condizioni, e fin qui tutto bene.
Se però tento di cambiare il background al volo, la prima volta va bene, la 
seconda non cambia più e da il classico avviso di buffer pieno, senza però 
dare alcun errore.
Il codice che uso per cambiare il background è questo:
METHOD SettaSfondo(oOggetto) CLASS Sub_Disp
IF oOggetto:Background = SELF:oSelezionato // se lo sfondo attuale è uguale 
a selezionato
             oOggetto:Background := SELF:oLibero //cambio lo sfondo in 
libero
ELSE
            oOggetto:Background := SELF:oSelezionato
ENDIF
Il metodo viene richiamato da ButtonClick()
Qualcuno ha esperienza con queste procedure?
Ciao.
                        Francesco Leo 

 IF oOggetto:Background = SELF:oSelezionato // se lo sfondo attuale č 


 ARCA Sistemi S.r.l.
Ciao e grazie.
                                                                Francesco 
Leo


Niente da fare, il problema non è quello, si comporta allo stesso modo anche 
se utilizzo i controlli globali.
Bah.................
    Ciao.
                                        Francesco Leo 

 
saluti
andrea bruni

 oOggetto:Background = =SELF:oSelezionato
intendevo chiaramente
oOggetto:Background == SELF:oSelezionato
saluti
andrea bruni

 andrea bruni
Grazie cmq........
                        Francesco Leo 

 ha scritto nel messaggio 
news:450e4f5d$0$35073$4faf...@reader4.news.tin.it...



??????????............non ho capito cosa vuoi dire....
Ciao.
                                    Francesco Leo 


ok.
il bottone appartiene ad una classe MioBottone che eredita da HooverButton
volevo dire:
il metodo che cambia lo sfondo del bottone lo scriverei per la classe 
MioBottone e non per la finestra owner del bottone.
...giusto un commento, anche se l'effetto che descrivi (funziona 2 volte) 
sembra un problema in qualche buffer della classe madre...
ciao
Massimo

 Massimo

Newsgroup: it.comp.lang.vo-clipper
Titolo: ROUND2() Mista Clipper + C

Ecco la mia ROUND2() senza operazioni e
con la parte di trattamento stringa in C.
(e' stata fatta questa notte quindi siate comprensivi -:)))
x EMG : puoi testarne la velocità p.f.
Fatemi Sapere
Paolo R.
paolo....@soft-com.it
www.soft-com.it
** Parte Clipper **
FUNCTION ROUND2(nValue,nDec)
LOCAL cValue,kPos,isNeg,nRet := 0
   IsNeg := nValue < 0
   nValue := ABS(nValue)
   IF nDec < 0
      cValue := "0"+LTRIM(STR(INT(nValue)))
      kPos := LEN(cValue)-ABS(nDec)
      IF kPos > 0
         cValue := LEFT(cValue,kPos+1)+REPLICATE("0",LEN(cValue)-(kPos+1))
         nRet := VAL(S_ROUND2(cValue,kPos,.F.))
      ENDIF
   ELSE
      cValue := "0"+LTRIM(STR(nValue))
      kPos := AT(".",cValue)
      IF (kPos == 0)
         cValue += "."+REPLICATE("0",nDec+1)
      ELSE
         cValue += REPLICATE("0",nDec+1)
         cValue := LEFT(cValue,kPos+nDec+1)
      ENDIF
      kPos := LEN(cValue)-1
      nRet := VAL(S_ROUND2(cValue,kPos,.T.))
   ENDIF
RETURN nRet*IIF(isNeg,-1,1)
** Parte C **
#include <extend.h>
CLIPPER S_ROUND2()
{
   char *cValue;
   int kPos;
   BOOL lInc;
   cValue = _parc(1);
   kPos = _parni(2);
   lInc = (cValue[kPos] > '4');
   cValue[kPos] = (_parl(3) ? '\0' : '0');
   while(lInc) {
          kPos--;
      if (cValue[kPos] != '.') {
         cValue[kPos]++;
         lInc = (cValue[kPos] > '9');
         if (lInc) cValue[kPos] = '0';
      }
   }
   _retc(cValue);
}

Ecco la mia ROUND2() senza operazioni e
con la parte di trattamento stringa in C.
x EMG : puoi testarne la velocità p.f.


 x EMG : puoi testarne la velocità p.f.
Fatto. Speravo meglio. In realtà, in media, non è più veloce delle
altre. A seconda del numero di decimali richiesti, può risultare
addirittura più lenta. Evidentemente la parte scritta in C non influisce
più di tanto... :-(
EMG
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg


 Mmmh..  mi sembra strano, comunque grazie,
se avanzo tempo proverò a fare un profile per vedere
quali sono le istruzioni più lente !!
Ciao
Paolo R.
paolo....@soft-com.it
www.soft-com.it


Hai provato a richiamare la funzione un tot di volte e paragonarla
all'altra?
Io di solito faccio così:
FOR II := 1 TO 1000000
    Func2() // Da testare
NEXT
? TT // Tempo occorso
FOR II := 1 TO 1000000
    Func() // Originale
NEXT
? TT // Tempo occorso
Dico Ciò perchè testando le funzioni per una sola chiamata è poco
significativo.
Ciao,
    Fabrizio Malaguti

 all'altra?
Tu che ne pensi? ;-)
