Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    247

    [DELPHI] Alcune domande su Trace into

    Salve,

    dal momento che non ero contento del comportamento delle Forms in Delphi, ho duplicato il file Forms.pas, l'ho modificato per soddisfare le mie esigenze, l'ho messo nella cartella del mio progetto e quindi l'ho aggiunto al progetto (Project > Add to Project...).

    Tutto OK. L'unico problema è che ora, quando faccio il debug del mio programma con il "Trace into", mi analizza riga per riga il contenuto di Forms.pas, facendomi perdere un sacco di tempo! Ma come devo fare per dirgli di "ignorare" il codice di Forms.pas, di "sorvolare" quell'unità che tanto non ha bisogno di essere analizzata?

    E un'altra cosa... Da quando ho inserito nel progetto il mio Forms.pas, il compiler mi dà una marea di "Warnings" strani (unsafe code, unsafe type, ecc...). Da cosa dipendono?


    Grazie in anticipo,
    Giacomo

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Scusa, solo una curiosità, ma cosa avrebbe la unit Forms.pas di sbagliato nella gestione dei form? :master:

    Oltretutto, quella unit contiene tantissime altre classi che hanno un ruolo attivo nell'applicazione Windows, oltre al fatto che il Designer della libreria VCL non tiene in considerazione affatto la tua libreria personalizzata, quindi alcune modifiche le vedrai solamente a runtime, oppure aspettati di avere una marea di problemi di dubbia provenienza nella prosecuzione del tuo progetto.

    A meno di non riscrivere l'intera VCL di tuo pugno, aspettati inoltre problemi in quanto qualsiasi modifica "pubblica" compi alle classi e alle interfacce del form non è congrua con il resto delle unit e delle classi della libreria.

    Insomma, mi sembra una manovra davvero scellerata, a meno che tu non sia in cerca di problemi assicurati, è ovvio.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    247
    Originariamente inviato da alka
    Scusa, solo una curiosità, ma cosa avrebbe la unit Forms.pas di sbagliato nella gestione dei form? :master:
    Ma guarda, si tratta di piccolissime cose... Ad esempio io voglio che quando una form è resa visibile con "ShowModal", sia posizionata automaticamente al centro della finestra principale.
    Così sono entrato in Forms.pas, ho smanettato un po' e ci sono riuscito: credimi, nessun problema

    Stesso discorso per DBGrids.pas... Volevo che i numeri sotto 5.5 all'interno della griglia fossero visualizzati in rosso, e allora sono entrato e ho fatto qualche modifica.

    Tutto qui...

    Ora il fatto è che si ostina a farmi il Trace Into di tutte le righe di Forms.pas e DBGrids.pas... Mah...

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Originariamente inviato da firefox88
    Ma guarda, si tratta di piccolissime cose... Ad esempio io voglio che quando una form è resa visibile con "ShowModal", sia posizionata automaticamente al centro della finestra principale.
    Così sono entrato in Forms.pas, ho smanettato un po' e ci sono riuscito: credimi, nessun problema
    In sostanza, hai modificato il codice sorgente della libreria VCL? Nessun problema? Aspetta e vedrai...

    Non è necessario modificare il codice della VCL, soprattutto con Delphi, per ottenere delle funzionalità: basta ereditare, o inserire il codice apposito in una classe base da cui ereditare... modificare il codice sorgente è semplicemente un'idea al limite del pazzesco.

    Originariamente inviato da firefox88
    Stesso discorso per DBGrids.pas... Volevo che i numeri sotto 5.5 all'interno della griglia fossero visualizzati in rosso, e allora sono entrato e ho fatto qualche modifica.
    Tutto qui...
    Tutto qui? Io credo che tu non ti renda conto, poi ognuno è ovviamente libero di fare ciò che vuole con il proprio codice sorgente.

    Tieni i CD per reinstallare vicino a te, comunque.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    247
    Non sapevo che fosse rischioso andare a modificare il sorgente. Dopo tutto me l'hai detto te: se i componenti preinstallati non ti piacciono, modificali. E io l'ho fatto.

    Scusa la mia ignoranza... Come si fa a fare quella cosa dell'ereditarietà?

    Sicuramente hai ragione... Ho persino cambiato i tipi di alcune variabili perché mi risultavano scomodi, e mi rendo conto che questo potrebbe creare problemi. Ora ripristino i .PAS originali.


    Grazie di tutto,
    Giacomo

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Originariamente inviato da firefox88
    Dopo tutto me l'hai detto te: se i componenti preinstallati non ti piacciono, modificali. E io l'ho fatto.
    Che fai, dai la colpa a me?
    Non ti ho mai detto di modificare il sorgente dei componenti esistenti, al massimo di recuperarne altri da terze parti o tutt'al più di crearne di tuoi, eventualmente ereditandoli.

    Originariamente inviato da firefox88
    Scusa la mia ignoranza... Come si fa a fare quella cosa dell'ereditarietà?
    Non è una cosa immediata e non ho attualmente il tempo di scrivere tutto a riguardo (l'argomento è piuttosto vasto).

    Questo può essere comunque un valido inizio.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    247
    Originariamente inviato da alka
    Che fai, dai la colpa a me?
    Ma figurati... Sono io che ho interpretato male. Ho sentito "modificare" e mi sono subito eccitato VVoVe:
    Lo spirito dello smanettone... :rollo:

    Questo può essere comunque un valido inizio.
    Ora me lo studio...


    Grazie ancora!

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    247

    Re: [DELPHI] Alcune domande su Trace into

    Originariamente inviato da firefox88
    Salve,

    dal momento che non ero contento del comportamento delle Forms in Delphi, ho duplicato il file Forms.pas, l'ho modificato per soddisfare le mie esigenze, l'ho messo nella cartella del mio progetto e quindi l'ho aggiunto al progetto (Project > Add to Project...).

    Tutto OK. L'unico problema è che ora, quando faccio il debug del mio programma con il "Trace into", mi analizza riga per riga il contenuto di Forms.pas, facendomi perdere un sacco di tempo! Ma come devo fare per dirgli di "ignorare" il codice di Forms.pas, di "sorvolare" quell'unità che tanto non ha bisogno di essere analizzata?

    E un'altra cosa... Da quando ho inserito nel progetto il mio Forms.pas, il compiler mi dà una marea di "Warnings" strani (unsafe code, unsafe type, ecc...). Da cosa dipendono?


    Grazie in anticipo,
    Giacomo
    Al di là del discorso VCL, mi sarebbe molto utile sapere la risposta alla mia domanda.

    Grazie,
    Giacomo

  9. #9
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288

    Re: Re: [DELPHI] Alcune domande su Trace into

    Originariamente inviato da firefox88
    Al di là del discorso VCL, mi sarebbe molto utile sapere la risposta alla mia domanda.
    Normalmente, il debug della libreria VCL non è abilitato: verifica che l'opzione Use debug DCUs non sia spuntata nelle opzioni del progetto.

    Questo discorso è valido nell'uso generale della libreria VCL; se, invece, hai fatto una copia dei file e li hai incluso nel tuo progetto, non credo esista alcuna opzione automatica per escludere un file dal processo di debugging, ma è sufficiente poi mettere i breakpoint al giusto posto per risolvere il problema, o meglio evitare di incappare o di avere a che fare con esso.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    247

    Re: Re: Re: [DELPHI] Alcune domande su Trace into

    Originariamente inviato da alka
    Normalmente, il debug della libreria VCL non è abilitato: verifica che l'opzione Use debug DCUs non sia spuntata nelle opzioni del progetto.

    Questo discorso è valido nell'uso generale della libreria VCL; se, invece, hai fatto una copia dei file e li hai incluso nel tuo progetto, non credo esista alcuna opzione automatica per escludere un file dal processo di debugging, ma è sufficiente poi mettere i breakpoint al giusto posto per risolvere il problema, o meglio evitare di incappare o di avere a che fare con esso.

    Ciao!
    Capisco... Come funzionano questi breakpoint? Posso dirgli di "sorvolare" una parte di codice?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.