Προς το περιεχόμενο

Child Form to Parent Form C++


Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα σας, δουλεύω στο visual studio C++/CLI (που είναι μπαστάρδεμα της c++ με .ΝΕΤ) και δυσκολεύομαι σε ένα θέμα.

Θέλω να περάσω από την φόρμα 2 (η οποία καλείται από την φόρμα 1), στην φόρμα 1 κάποια δεδομένα στο textbox της. έχω βρει αρκετά αποτελέσματα όσον αφορά msdn,stackoverflow αλλά όλα είναι για C#. Έχω όμως καταφέρει να καλώ την φόρμα 1 από την 2 (πχ να κάνω την πρώτη show και την άλλη hide και αντίστοιχα)

 

Θα μπορούσατε να με βοηθήσατε?

Δημοσ.

Εχω ενα .txt αρχειο να δημιουργειται στο τελος με δεδομενα που θελω εγω. Έπειτα, έχω ένα textbox με πολλαπλά lines όπου το εμφανίζω. Θέλω αυτό που εμφανίζεται στο textbox της φόρμας να εμφανίζεται και στο textbox του γονέα να σου δώσω ένα παράδειγμα: στην φόρμα 2 πατάω ενα κουμπί ,έστω ΟΚ, και εμφανίζεται στο textbox η τιμή 5. Θέλω αυτή η τιμή 5 να μεταφερθεί και στο textbox της φόρμας 1.
px link http://stackoverflow.com/questions/14980412/change-textbox-text-parent-from-child-form

Δημοσ.

Στο link σου δείχνει πως να παρεις πίσω την τιμη του child αφού κλείσει (οταν πατήσεις Ok, close κλπ). Θες να ενημερώνεται ο parent και πριν πατήσεις ΟΚ?

Δημοσ.

Θα πρέπει να χρησιμοποιήσεις συναρτήσεις get() και set(), διότι απ ευθείας δεν γίνεται να πασάρεις δεδομένα απ την μία φόρμα στην άλλη.

 

Δές εδώ ένα παράδειγμα για c++/cli που κάνει ακριβώς αυτό που ψάχνεις.

Δημοσ.

Κατάλαβα οτι κάτι τέτοιο έπρεπε να κάνω. Σε ευχαριστώ πολύ φίλε μου. Κάτι ακόμα, και σε C# θα χρειαζόταν η ιδια διαδικασία γιατί νομίζω αν έκανα το textbox public θα μπορούσα να το καλέσω κατευθείαν μέσα στην άλλη φόρμα. Διόρθωσέ με αν κάνω λάθος, σε ευχαριστώ.

Δημοσ.

Όχι δεν γίνεται γιατί θέλει static functions. Αντίθετα, ενας μηχανισμός είναι ο παρακάτω:

public string SetText
{
  get { return textBox1.Text; }
  set { textBox1.Text = value; }
}
Δημοσ.

Εγινε σε ευχαριστω. Δοκίμασα με τον τρόπο που χείχνει το απο πάνω λινκ δηλαδή την δημιουργία get και set οσον αφορά το συγκεκριμένο textbox αλλά και πάλι το αρχικό textbox στην κύρια φόρμα μένει άδειο.

Δημοσ.

Εγινε σε ευχαριστω. Δοκίμασα με τον τρόπο που χείχνει το απο πάνω λινκ δηλαδή την δημιουργία get και set οσον αφορά το συγκεκριμένο textbox αλλά και πάλι το αρχικό textbox στην κύρια φόρμα μένει άδειο.

On the top of my head, μιας και φανταζομαι ανοιγεις το φορμ 2 απο το φορμ 1, χρησιμοποιησε το event on form close για το φορμ 2 , αποθηκευσε την τιμη των textboxes και θεσε στην φορμ 1 τα textboxes.

 

Τα static functions οπως ανεφερες ειναι ο φαινομενικα απλος, αλλα και που οδηγει σε απειρα προβληματα τα οποια δεν μπορεις ακομη να τα σκεφτεις μεχρι να γινεις πιο εμπειρος και θα πρεπει να τα αποφευγεις.  

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...