Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [C++Builder] Unire diversi progetti

    Sicuramente esiste il modo per far sì che alla pressione di un tasto o un altro evento, la Form presente scompare lasciando spazio ad una di un progetto totalmente diverso...ma non riesco a trovarlo...

    continuo a cercare, ma se sapete darmi una mano è mooolto ben accetta!

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

    Re: [C++Builder] Unire diversi progetti

    Originariamente inviato da Ephestus
    Sicuramente esiste il modo per far sì che alla pressione di un tasto o un altro evento, la Form presente scompare lasciando spazio ad una di un progetto totalmente diverso...ma non riesco a trovarlo...
    Non è ben chiaro cosa intendi dire...

    Stai parlando di nascondere una finestra della tua applicazione o di altro? Spiegati meglio...
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  3. #3
    Ciò che mi serve è poter unire molti progetti diversi partendo da uno principale.

    PEr esempio ho il progetto Main.exe nel quale è presente un ComboBox con 3 nomi. Ne selezioni uno e all'evento OnChange oppure all pressione del tasto si apre automaticamente il progetto nome1.exe non lasciando traccia di quello precedente....Più o meno come scegliere un link di una pagina web...

    spero di essere stato + chiaro

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Se ho capito bene, ciò che devi fare semplicemente è aprire un'applicazione e chiudere quella corrente (?)
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  5. #5
    Sì...può andare bene anche questo....

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da Ephestus
    Sì...può andare bene anche questo....
    Va bene per forza, perchè non vedo altre alternative.

    La funzione che ti consente di eseguire un'applicazione è ShellExecute: cerca all'interno di questo forum la parola chiave per ottenere tutti gli argomenti in cui viene trattata (ricordo di averne parlato io stesso).

    Per chiudere la tua applicazione, ti basta chiamare il metodo Close della form principale (MainForm).
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  7. #7
    Grazie ora cerco...

  8. #8
    Ho trovato abbastanza roba in giro per capire come funziona tranne una cosa....

    codice:
    ...
    ...
    ...
    HINSTANCE ShellExecute(
        HWND hwnd,
        LPCTSTR lpOperation,
        LPCTSTR lpFile,
        LPCTSTR lpParameters,
        LPCTSTR lpDirectory,
        INT nShowCmd);
    Parameters
    
    hwnd
       [in] Handle to a parent window. This window receives any message
       boxes that an application produces, such as error reporting.
    ...
    ...
    Che cos'è hwnd?? In tutti gli esempi viene sostituito da "handle", ma a me non lo accetta.. Ho, per la precisione, incluso shellapi.h al progetto

    Sostituito da NULL mi funziona tutto!

    Grazie ancora

  9. #9
    Anchio usa Borland C++ Builder e ho avuto il tuo stesso problema.

    ShellExecute e un API, e devo ancora capite come il Borland Builder gestisce le API perche cambia tutti i prototipi e tipi...

    Comunque come HWND (che e Handle della finestra corrente) mettici 0 o NULL, cosi come hai fatto te:

    codice:
    ShellExecute(0,"open","Programma.exe",0,0,SW_SHOW);
    in teoria mettendoci 0 il Biorland capisce che si tratta della finestra corrente.

    Ciao..
    Il linguaggio migliore e quello che ti crei da solo...

  10. #10
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da Ephestus
    Che cos'è hwnd??
    HWND è un tipo di dato equivalente alla "doppia word" che viene usato di frequente in Windows e sta ad indicare la necessità di passare alla funzione un handle di finestra.

    Originariamente inviato da Ephestus
    In tutti gli esempi viene sostituito da "handle", ma a me non lo accetta.. Ho, per la precisione, incluso shellapi.h al progetto.
    Negli esempi viene sostituito da "handle" poichè tale handle è una variabile precedentemente inizializzata che contiene l'handle, appunto, della finestra chiamante.

    Gli esempi devono essere sempre interpretati e (quasi) mai presi alla lettera; occorre capire cosa dimostra l'esempio e applicare il concetto alla propria situazione, senza fare il "copia e incolla" perchè potrebbe non funzionare, senza contare che la volta successiva in cui il problema si ripresenta, non ci si ricorda come risolverlo, a meno che non si abbia fissato nella memoria il codice preciso, senza possibilità di risalirvi per deduzione.


    Originariamente inviato da Ephestus
    Sostituito da NULL mi funziona tutto!
    NULL è l'equivalente dello 0 (zero), se non ricordo male, che corrisponde a non specificare alcun handle nel parametro in questione, anche perchè effettivamente non ti serve in questo caso (è ininfluente per il tuo scopo).

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

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

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 © 2025 vBulletin Solutions, Inc. All rights reserved.