Visualizza post

Questa sezione ti permette di visualizzare tutti i post inviati da questo utente. N.B: puoi vedere solo i post relativi alle aree dove hai l'accesso.


Post - pastrank

Pagine: 1 ... 9 10 [11] 12 13 ... 18
151
Progetti degli utenti / Re: Formulinux
« il: 10 Maggio 2013, 20:07:04 »
1) cioè???

Cioe', da documentazione, This statement must be used in an event handler. Stai facendo qualcosa che la documentazione ti dice di fare in altro modo.

2) lo so ma in teoria dovrebbe funzionare....

Stesso discorso, se funziona e' per caso e anzi penso un compilatore "smart" dovrebbe avvisarti. Ho trovato altri errori nei miei programmi, e grossi, di cui il compilatore non si accorgeva, ma in questo caso e' da fare assolutamente cosi', visto che Functions acts like procedures except they're returning a value. Their use and define are the same that procedures. We must just indicate which value type will be returned.

3) nooo...

Dovresti controllare se il contenuto e' quello giusto, non quello che ci potrebbe essere di sbagliato. Tra l'altro, vai a vedere una tabella di unicode e vedi quante cose dovresti controllare!

4) l'obbiettivo per ora non è stabilire se è un numero ma farlo diventare un numero, non permettendo di inserire altro

Se non permetti di inserire altro, non hai bisogno di fare diventare nulla... ma oltre a quello, sempre se capisco cosa vuoi fare, stai legando il funzionamento di piu' funzioni, quando ritoccherai qualcosa smetterà di funzionare tutto.

5) perchè in quel modo "funziona", troppo complicato da spiegare :P  :rotfl:

Mi vengono in mente casi in cui non funzionerebbe, eh.

ma perchè non riesci ad eseguilo :o :o :o
che ver. hai???
revisione???

La 3.1.1,  e mi da' Unknown symbol 'scrollbar' in class 'listbox'

152
Progetti degli utenti / Re: Formulinux
« il: 09 Maggio 2013, 23:42:24 »
--bò se avete altro--

Ancora non riesco ad eseguirlo, quindi non dico niente sul funzionamento, ma qualcosa sul codice. Questa, per esempio, cosi' com'e', sembra gridare per il dolore, ed essendo a occhio la funzione che tutto dovrebbe controllare, mi perplime assai: 1) Gli eventi si fermano quando la funzione restituisce un valore, non genericamente in un modulo 2) La funzione deve restituire un valore sempre 3) A occhio alcune regexp sono duplicate 4) Se l'obiettivo e' stabilire se un contenuto e' numero o meno, esiste anche isnumber() 

Codice: [Seleziona]
Public Function Filtro(stringa As String)  
 If key.Text Like "[^0-9.,-]" Then
   Stop Event
 Endif
If Key.Text = "." Then
  If ricerca(stringa, ".") = 1 Then
    Stop Event
  Endif
Endif
If Key.Text = "-" Then
  If ricerca(stringa, "-") = 1 Then
    Stop Event
  Endif
Endif
If Key.Text = "," Then
  If ricerca(stringa, ".") = 1 Then
    Stop Event
  Endif
Endif
Select Case Key.Text
  Case "è", "é", "ò", "ç", "à", "°", "ù", "§", "£", "ì", "€", "¹", "²", "³", "¼", "½", "¬", "ł"
    Stop Event
End Select
End

A proposito, anche 5) La funzione ricerca restituira' un valore, ma perche' 1? Se non vuoi ci sia un duplicato, ti basta controllare che non siano, appunto, in due dopo l'inserimento... Tipo

Codice: [Seleziona]
Public Function ricerca(testo As String, lettera As String) As boolean
   If instr(testo,lettera) <> rinstr(testo,lettera) then
      return true
   else
       return false
   endif
End

Poi, magari non ci ho capito niente io, eh.
Imho comunque dovresti controllare l'immissione nella textbox per evitare un milione di problemi poi.

153
Domande tecniche / Re: Messaggio "Execute file"
« il: 06 Maggio 2013, 12:31:45 »
E' possibile fare in modo che questo messaggio non compaia più mettendo come predefinita la scelta "execute"?

Un collegamento sul desktop... non e' che richiamando il runtime con parametro l'eseguibile saresti a posto? Tipo,
/usr/bin/gbr3 /home/tuahome/prog.gambas

154
è uscita Debian Wheezy e la versione di Gambas dei repo è la 3.1.1-2

Questo repository del tale che compila i deb l'hai provato?

> deb ftp://ozdocit.org/pub/easygp/ easygp main
> deb-src ftp://ozdocit.org/pub/easygp/ easygp main

155
nooo scherzi :rotfl:
cambire non tanto...
dopo tutti i controlli vuoi che non sia un numero....

Non si sa mai, hai provato a copiarci lettere, numeri, frasi, libri? Ogni calcolo rifatto sugli estremi se ci sono limiti, etc etc? Non e' semplice semplice, per quello ti avvisavo: per dire, sai perche' avevo messo quel pezzetto di riga
Codice: [Seleziona]
if isnumber(TextBox1.text & "0") then
perche' se no isnumber() se inizi a scrivere "-" ti darebbe false.

La prima cosa, quando devi inserire dei dati, e' sempre fare in modo che siano in un formato di ingresso conosciuto, in questo caso un numero, ovvero prima di iniziare il calcolo devi essere sicuro di avere un numero. Allo stesso modo, dovessi leggere un file, prima ti dovresti assicurare che esista, che abbia i permessi per leggerlo, che contenga i dati nel formato che tu vuoi, e solo dopo leggerlo. Il vero cialtrone invece fa una funzione per leggere il file infarcita di try e basta.

Ah, nemmeno io sono il programmatore che fa tutto in modo perfetto, anzi, invecchiando peggioro continuamente  :)

156
come si fa a escluderli??

Per escluderli e' facile, ti basta memorizzare il valore originale della textbox da qualche parte, tipo variabili o la tag del controllo,  e poi, nell'evento change(), controllare il testo con isnumber(), aggiungendo uno 0 alla fine nel caso ci sia un solo carattere e sia un meno.

Codice: [Seleziona]
If IsNumber(TextBox1.text & "0") = False Then
   'oppure if latuafunzione(textbox1.text) = false then
   TextBox1.text = textbox1.tag
Endif
textbox1.tag = TextBox1.text 
 

Occhio che l'ho scritto senza provarlo. E attento comunque a tutte le implicazioni, tieni conto che le calcolatrici di solito usano il punto come separatore, il formato italiano la virgola, quello inglese il punto, ma vorrai pure copiarli i risultati, e se usi il punto sul programma su di un sistema italiano, copi il risultato, lo incolli su uno spreadsheet e viene visto come stringa, ti stressi la vita.

Ed e' per quello che prima di aggiungere funzionalita' e parlare di versioni dovevi fare una cosa, controllarla bene e poi potevi andare sicuro, ora devi cambiarne un sacco  :rolleyes:

157
ok manca solo la trsformazione della "," in puntino e qualche carattere

Anche il copia e incolla verso e da le tue caselle di testo puo' dare problemi.

158
non ne conosco le proprietà... :-\ :-\
mai usata... :mad:
vedrò..ma non mi piace limitarmi la vita...
alla fine si dovra comunque lavorare con le stinge...
in teoria solo l'utente non può inserire le lettere il programma volendo dovrebbe poterlo fare...

Non e' che l'uso sia cosi' difficile, se dopo 20 secondi che la stavo usando l'avevo capito io. Ne pare una limitazione, non sei obbligato a usarla ovunque ma solo dove serve, e dubito anche che appesantisca il programma, visto che e' solo una textbox "filtrata"

159
lavorando solo con i numeri

Aspetta (e ricorda che di solito faccio tutt'altre cose, quindi non sono abituato). Intanto guarda qui, ci ho ripensato adesso:
http://gambasdoc.org/help/comp/gb.form/valuebox?show&v3

Poi i controlli li farai in una funzione successiva, per tutte le procedure, magari

160
lo fa inserire più di una volta...(la lettera..)

Se questo riguarda il controllo di cosa scrivi nel formulinux, considera anche di non farlo inserire nel textbox ma in masked edit, di evitare che si possa scrivere 1.1.1 controllando con la funzione Like, e di usare anche isnumber() per controllare alla fine il tutto: non a caso, dicevo che la storia era lunga!

161
Domande tecniche / Re: Markdown: Ritorno a capo
« il: 01 Maggio 2013, 19:04:43 »
Comunque in LINK
si evince che sarà lunga la cosa:

Almeno capiro' a cosa serve :) Non servira' mica solo a vedere cosa fanno le proprie funzioni mentre si scrive il codice?

162
Progetti degli utenti / Re: Formulinux
« il: 01 Maggio 2013, 16:09:36 »
per i numeri negativi me ne ero già accorto però (meno la radice quadrata) il resto non dà errore quindi metterò solo qualche controllo in più

Te pensa che potresti sia mettere gia' al posto delle textbox i masked edit, e fare una funzione, tipo quella ctl, che verifica, prima dei calcoli, se rientra in tutti i parametri necessari. Per esempio, il bottone che lancia il calcolo prima del comando dovrebbe contrallarli, e se questi sono ok procedere. Una cosa tipo

function isOk(valore as variant, deveessereunnumero as boolean, nondeveesserezero as boolean, nondeveesserenegativo as boolean, minimo as variant, massimo as variant, etc etc) as boolean

e in essa controlli tutto, per esempio per controllare una radicequadrata nondeveesserenegativo dovrebbe arrivargli true e nella funzione controllare. Alla fine una funzione cosi' (ma completa, io ho fatto solo un esempio) ti viene bella lunga, e l'hai da controllare tanto, ma se la fai bene hai risolto i tuoi problemi in eterno.

per la calcolatrice a nastro bell'idea....

Era uno degli esempi classici che si facevano una volta, a me veniva in mente sempre perche' ho sempre sofferto della mancanza sul pc di calcolatrici che usino variabili utente e funzioni definite sempre dall'utente, ce ne stava una bellissima in un programma di esempio di un linguaggio che comprai, a giudicare dal tuo nick, sette anni prima che nascessi tu :)

163
Domande tecniche / Re: Markdown: Ritorno a capo
« il: 01 Maggio 2013, 13:12:41 »
Appunto: essendo la Debian ferma li' (la situazione dovrebbe iniziare a cambiare tra qualche giorno con l'uscita della nuova stable), non lo posso provare, ne posso avanzare compilando che i (pochi) pc con cose mie sono tutti Debian, e non in casa di smanettoni. Dal mio punto di vista forse era meglio se BM si indirizzava su altri cose (es, qualche macchina virtuale per mantenere i pacchetti sincronizzati tra le varie distro principali), ma tant'e', le mie esigenze non sono quelle di altri (per esempio, io ho fatto quasi tutte cose a linea di comando...)

164
Domande tecniche / Re: Markdown: Ritorno a capo
« il: 01 Maggio 2013, 10:34:13 »
Esempio in Gambas prova ascrivere:

Non serve, ci vuole la versione 3.3 e ancora non ci sono...

165
Progetti degli utenti / Re: Formulinux
« il: 01 Maggio 2013, 04:40:19 »
ecco...la 0.0.8

Curioso, l'ho scaricata e pero' mi da' un errore sulla listbox (unknown symbol scrollbar in class listbox, che magari deriva dal fatto che io la 3.1.1) su cui indaghero' quando avro' tempo, ma, senza voler fare il maestrino, quando ho aperto il progetto noto due cose: la prima, riguarda il differente approccio estetico tra i vari pezzi, non si capisce cosa dovrebbe essere (potrebbe essere trasformato in una calcolatrice a nastro, tanto per la prima cosa che mi viene in mente), ci sono troppi bottoni per i ricalcoli, piu' importante la seconda, si vede per esempio nella form della radice quadrata, vede invece protagonista il fatto che non c'è un controllo su cosa calcoli. La procedura ctrl.qualcosa non basta.
Cioè, cosa succede se scrivo, quanto meno in quella form, 2-3, ma anche -1?
In altre parole, prima di qualsiasi altra cosa, dovreste pensare a fare una funzione che controlli se e' un numero davvero, se sta in certi limiti (la radice non la puoi fare di un numero negativo, i lati dei poligoni non possono avere lunghezza negativa)

Pagine: 1 ... 9 10 [11] 12 13 ... 18