PDA

View Full Version : [delphi] Creare un oggeto al click su pulsante


lyllo
25-04-2003, 12:31
ciao ragazzi,
ho iniziato a cazzeggiare con delphi 7, graazie agokan e gli altri per i sugerimenti, la guida di pogeo è OK, l'ho già finita ma è ok.

vorrei creare un pulsante che crei un componente in una data posizione ed ogni volta che l'utente clicca sullo stesso pulsante si crea un ulteriore componente però più sotto...

|PULSANTE|............00000 (componente)
.
.
click
.
.
.............................00000
.
.
clicck
.
.
.............................00000

ideee?

lyllo
26-04-2003, 11:13
nessuna idea?

badaze
26-04-2003, 15:02
http://www.sunncity.com/Tutorial/Creating_Object_On_The_Fly.html

a2000
26-04-2003, 17:04
e pensare che in VB è una ca++ata da 3 righe; :cool:

ma siccome Basic e Pascal sono della stessa razza direi che dovresti cavartela altrettanto semplicemente ! :)

badaze
26-04-2003, 18:15
Originally posted by "a2000"

e pensare che in VB è una ca++ata da 3 righe; :cool:

ma siccome Basic e Pascal sono della stessa razza direi che dovresti cavartela altrettanto semplicemente ! :)

Completo di gestione degli eventi ecc.... Non credo !

a2000
26-04-2003, 19:33
di tutto e di più, con l'eredità di vizi (proprietà) e virtù (metodi) dell'oggetto seme.

a2000
26-04-2003, 20:56
esempietto

(e si può replicare, in modo identico o modificato, anche il codice di tutti gli eventi)

lyllo
27-04-2003, 10:28
ma sapete qual'è il fatto?

il codice è più o meno:

procedure PulsanteClick(Sender: TObject);
begin
with TMemo.Create(Self) do
begin
parent:=self;
scrollbars:=ssvertical;
etc...
end;
end;

solo che l'iterazione non è infinita, ma una volta che clicco, poi non fa più nulla!
cioè rimane statico e fermo..
ne crea uno e poi basta!

lyllo
27-04-2003, 10:30
Originally posted by "a2000"

esempietto

(e si può replicare, in modo identico o modificato, anche il codice di tutti gli eventi)

ma come lo usoquelo codice tuo che sta in foglio excel?!?!?!?

a2000
27-04-2003, 11:01
lo usi subito in VB. :cool:

se in Delphi fai fatica i casi sono due: il problema è nella lama (Delphi) o nel manico (lyllo). :p

Io propenderei più per la prima che ho detto, non per piaggeria, ma perchè so che con la famiglia dei (a cui appartiene anche Delphi=VisualPascal) si scrivono 100 righe di codice per l'interfaccia grafica per ogni riga di codice di algoritmo di calcolo (che è poi l'unica cosa ch conta).

Se ragazzoli, invece di rompervi il ca++o con Button, ListBox, CheckBox, Grid e altre inutili ca++ate, per fare bella figura con gli amichetti nella vostra stanzetta, vi studiaste gli algoritmi di integrazione per le equazioni differenziali o di minimizzazione vincolata o quel cut vo' a piacere, con 3 ore di Help in linea di Excel mettereste su interfacce grafiche con un decimo del tempo e un ventesimo delle righe di codice che dovete biascicare per scrivere poco più che "Ciao Mondo".
Ma che ca++o fate gli amanuensi[/siz] ?????

E se dovessi dare all'utilizzatore la possibilità di disegnare a ca++o suo, a suo desiderio diciamo, lo schema di un impianto, di uno schema elettrico con la possibilità di inputare centinaia di dati per ogni apparecchiatura con la possibilità di eseguire calcoli e di generare i dati di input, di formattare, stampare, modificare in modo autonomo ????

Quante righe di codice scrivi in VisualMinchia ?
io dico intorno alle 10000.

Fatti non foste per fare gli amanuensi[/siz] .....

:)

verloc
28-04-2003, 10:21
E' un problema tipico di tutte le applicazioni visuali:
al clic prima controlli che non sia presente gia una istanza del controllo che vuoi creare e solo in questo caso lo crei.
In modo tale che se clicchi ed è già creato non fa niente.

una cosa più o meno così...

if button1 uguale null allora...crei



ehi vecio !!!Come ti butta?

verloc
28-04-2003, 10:27
Originally posted by "badaze"



Completo di gestione degli eventi ecc.... Non credo !


ehhhhhhhhhhhhh,...... in tutti i visual c****i sò tre righe .
Gnurant' c'è pure la gestione degli eventi .
Deve solo capire la logica dell'operazione lascialo in pace :D.


Vecio!! Non tormentare l'apprendista di turno :D

a2000
28-04-2003, 10:53
uaglio' ma fuoss' d' Melfi :)

http://digilander.libero.it/mikes78/

http://www.sisde.it/Sito/Rivista21.nsf/ServNavig/30 :cool:

lyllo
28-04-2003, 15:00
per calcolare valori di funzioni o per l'integrazione numerica o per la soluzione di equazioni differenziali uso semplicemente il FORTRAN.
dimmi, a20, che fai almeno ingnegneria, altrimenti un vaffan non te lo leva nessuno.

tornando a noi, io vorrei che ad ogni click si generasse un nuovo elemento.
se premo sul pulsante 10 volte, vorrei che si generassero 10 Memo tutti belli incolonnati uno sopra l'altro!

lyllo
28-04-2003, 15:02
Originally posted by "verloc"

E' un problema tipico di tutte le applicazioni visuali:
al clic prima controlli che non sia presente gia una istanza del controllo che vuoi creare e solo in questo caso lo crei.
In modo tale che se clicchi ed è già creato non fa niente.

una cosa più o meno così...

if button1 uguale null allora...crei


io voglio che ad ogni click si venga a genereare un nuovo componente!

a2000
28-04-2003, 15:40
Originally posted by "lyllo"

per calcolare valori di funzioni o per l'integrazione numerica o per la soluzione di equazioni differenziali uso semplicemente il FORTRAN.
dimmi, a20, che fai almeno ingnegneria, altrimenti un vaffan non te lo leva nessuno.

tornando a noi, io vorrei che ad ogni click si generasse un nuovo elemento.
se premo sul pulsante 10 volte, vorrei che si generassero 10 Memo tutti belli incolonnati uno sopra l'altro!

bene, bravo che usi il Fortran, (comunque prima gli algoritmi e poi il linguaggio) allora perchè non il VisualFortran della Compaq ?
il vaffan tienitelo buono per i tuoi amichetti di stanza.

tornando a noi, perchè non provi a chiamare i tuoi codici in Fortran con delle belle interfacce grafiche in Excel ?
hai visto com'è semplice, e si può fare tutto l'input/output dati che puoi fare (fooorse) con il Delphi con un ventesimo delle righe di codice ! ;)


P.S.
100/100 & L :cool:

lyllo
28-04-2003, 15:50
100/100 & L
cioè sei appena uscito dal liceo?

:D :D :sofico: :sofico:

cresci!

a parte gli scherzi, se voglio imparare ad usare il Delphi, a te che cosa te ne frega?
per quanto ancora dovrai ammorbarmi?
ti ringrazio per i consigli, ne terrò conto, ora se vuoi aiutarmi col delphi, grazie, altrimenti ciao e alla prossima!

verloc
28-04-2003, 16:07
Scusa ho capito la domanda al contrario :)
Allora:
Te li crea sovrapposti perchè prende le dimensioni del controllo e le coordinate client-screen di default.
Quindi per non farli sovrappore devi assegnare
alla proprietà top un valore che non sia sempre lo stesso(che è l'altezza in punti di dove piazza il controllo).

Concettualmente:
top(i)=top(i-1)+Heigth(i-1) e te li crea uno sull'altro senza spazio in mezzo.

verloc
28-04-2003, 16:14
Originally posted by "a2000"

uaglio' ma fuoss' d' Melfi :)

http://digilander.libero.it/mikes78/

http://www.sisde.it/Sito/Rivista21.nsf/ServNavig/30 :cool:

Non ho capito che c'azzecca Melfi :confused:

Per l'altro:
0 punti se hai usato internet (come credo)
10 punti se è per cultura ;)

leggilo:capirai cosa significa strategia della tensione.
(E' un capolavoro assoluto)

Per tua informazione ho l'intera produzione del Maestro escluso il teatro
(4 volumi in cofanetto ,Mursia 70.000 £ l'uno)
:cool:

verloc
28-04-2003, 17:14
Dimenticavo,naturalmente crearli così non ti serve a niente perchè
il programma non ricorda quanti ne hai creati.
In genere si maneggiano con una lista aggiungendo o togliendo controlli a runtime,in questo modo hai il pieno controllo della faccenda.

Ovviamente così è più complicato,ma neanche tanto.

Lassu u' futt a a2000 (si ie,port' a tes' ch' Excell; a cummssion' m' shput' n' faccie) :D

lyllo
28-04-2003, 17:17
toglimi una curiosità,
la lista dove la dichiaro?

in una sezione type a parte messa li da me,
in private o public?
dichiarata una lista TipoLista in che posizione creo la variabile?
localmente oppure nelle variabili globali?

PS. ma non è meglio un array?

verloc
28-04-2003, 17:35
Tieni presente che io uso BCB non Delphi.
La lista la puoi dichiarare più o meno dove vuoi.
All'inizio la lista è vuota;al clic aggiungi un controllo alla lista.
Un array mi pare si usi se il numero di elementi è fisso(vado ad intuito col Delphi).

Perchè non ci siano equivoci:
sto parlando di una TList (cosa di Delphi e CBuilder).

Spulcia nell'help sugli esempi riguardo all'uso di TList:qualcosa dovresti trovare che fa al caso tuo.

Vorrei aiutarti di più,ma sto con l'acqua alla gola.
Ciao ;)

lyllo
28-04-2003, 17:37
grazie cmq!

a2000
28-04-2003, 21:43
Originally posted by "lyllo"



....
a parte gli scherzi, se voglio imparare ad usare il Delphi, a te che cosa te ne frega?
per quanto ancora dovrai ammorbarmi?
ti ringrazio per i consigli, ne terrò conto, ora se vuoi aiutarmi col delphi, grazie, altrimenti ciao e alla prossima!

ma perchè adesso al liceo ci si matura in centesimi ?
eh già con l'euro ... :p

ma che studi ?
zoologia marina :D :D :D

:sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico:

oohhh ....ooohhh mare mosso aiutooooo .... ci sono tanti delfini che non sanno che pesci prendere :p :p :p

lyllo
29-04-2003, 17:17
oddio ma sei un pazzo!!!!!!!!!! :D :D :cry: :cry:

PS: si a liceo sono 6 anni che ci si diploma in centesimi...
a questo punto o sei così rimbambito da non ricordarti comw ti ei diplomato, oppure sei già così vecchio da poterti considerare NEOZOICO!!!!!!!!!!! :sofico:
oppure sei così ingegnere da aver perso il lume della ragione!!!

PPS: dai mo basta su, in ounizione dietro alla lavagna e fammi ricominciare a parlare del delphi....
no, oddio... ho capito mo la battuta...

non dirmi che
ma che studi ?
zoologia marina



oohhh ....ooohhh mare mosso aiutooooo .... ci sono tanti delfini che non sanno che pesci prendere
era riferito al fatt che sto scoprendo il mondo del delphi..
deplhi..NO...
delphi..[/siz]

a2000
30-04-2003, 16:12
proooonto lyllooooooo

[/siz]


:sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico: :sofico:

lyllo
30-04-2003, 18:03
ma scusa, mo so curioso: quanti anni hai?

a2000
01-05-2003, 07:34
[/siz]

lyllo
01-05-2003, 10:26
:muro: