Pisze program który wyświetli okno dialogowe z zawartością zmiennych z okna głównego. Jak mam napisać aby te okienko dialogowe znajdywało te zmienne (z głównej formy)??
Co to za problem, uzyc MessageBox() ?
Chyba, że to ma być inna forma...
Chodzi o to, że to nie ma być MessageBox tylko okno dialogowe, nowa forma. A ja nie umiem przeżucić zmiennej z formy głównej do tego okna.
#include "unit1.h" się kłania...
I co dalej?? [???]
wtedy juz bedziesz miał dostep do zmiennych z formularza głownego: Form1->zmienna;
VC zwraca błąd:
[code]Cannot open include file: 'unit1.h': No such file or directory[/code]
A jak to zadziala to np. zmienna z pierwszej formy nazywa się zmienna1 to w drugiej formie moge napisać [code]zmienna1 = "jakiś tekst";[/code] czy coś jeszcze trzeba??
aaa Vc, sorki ale nie napisałes w czym to ma byc a ja podałem odpowiedz do bcb, w vc niestety nie wiem jak to zrobic.
Arghhh... 0 myślenia. Unit1.h to standardowa nazwa pliku nagłówkowego pierwszej stworzonej formy w BCB. Jak się dowiesz, jak się odpowiednik tego pliku nazywa w VC, to nie będziesz miał problemu z odpowiednią deklaracją.
[stuk] Petycja do Adama, by rozszerzył prefix C/C++ na:
ANSI C
BCB
VC
i co tam jeszcze? A GCC?
Kurde ile tych C++ów jest. A mówią, że to taki przenośny język. To niech kurde firmy zaczną stosować się do standardu!!
[stuk] Petycja do Adama, by rozszerzył prefix C/C++ na:
ANSI C
BCB
VC
i co tam jeszcze? A GCC?
Kurde ile tych C++ów jest. A mówią, że to taki przenośny język. To niech kurde firmy zaczną stosować się do standardu!!
Całkowicie sie zgadzam !!
Tylko zamiast GCC można by zrobić C++ , może C/C++ pod DOS
ale już nie będę kombinował
Skąd można się dowiedzieć jak nazywa się odpowiednik [code]unit1.h[/code] w VC ??
PS.
Ja również podpisuje się pod ww petycją.
[stuk] Petycja do Adama, by rozszerzył prefix C/C++ na:
ANSI C
BCB
VC
i co tam jeszcze? A GCC?
Kurde ile tych C++ów jest. A mówią, że to taki przenośny język. To niech kurde firmy zaczną stosować się do standardu!!
Tak ! Tak ! I jeszcze Allegro i/lub Open GL itp.
Ja też bym się dołaczył do czegoś w stylu: allegro, openGl i directX.
TO by było dobre. A co do znalezienia odpowiednika unit1.h w vc to czy nie mozesz sam tego wykombinować ?
Jeszcze nie bawie sie VC++ ale sądze ze to nie będzie trudne.
Albo proponuje stwozenie nowego .h w którym to zawarte by były właśnie zmienne, a dolaczyl bys go do obu Form :).
Agrh !
Czasem jak czytam niektore posty to sie zalamuje :P
Bardzo pomocnym byloby pisanie w naglowkach, jakiego kompilatora uzywacie. Miedzy VC a bcb sa znaczne roznice (nie chodzi tu o standardy samego C++ ). Tutaj nie ma sie co pytac o pliki naglowkowe. Gruber jakbys wiedzial jakie sa zasady przy programowaniu obiektowym nie byloby problemu.
Zreszta odpowiedz na pytanie jest banalnie prosta, choc myslalem, ze mi to zajmie wiecej czasu. :P
Jak tworzysz program w VC to:
(najczesciej jest to robione poprzez kreator)
Tworzysz glowna klase np. <font color="green">CtestApp</span> wywodzaca sie z klasy <font color="green">CWinApp</span>.
<font color="green">CWinApp</span> ma wirtualna funkcje <font color="green">BOOL InitInstance()</span>
...i tu za chwile wrocimy :)
Nastepnie tworzysz sobie klase, ktora odpowiada twojemu okienku dialogowemu np: <font color="green">CtestDlg</span>, ktora wywodzi sie z <font color="green">CDialog</span>.
Dobra, teraz to musi byc jakos uruchomione. Jak to dziala? Bardzo prosciutko.
W pliku naglowkowym naszej przykladowej aplikacji test czyli w moim przykladzie test.h zaraz po definicji klasy mamy cos takiego
[code]extern testApp testApp;[/code]
W tym momencie uruchamiamy nasz obiekt. Czyli nasza aplikacje, ktora
(i tutaj wracamy) w funkcji <font color="green">BOOL InitInstance()</span>
ma taki fajny bajerek jak:
[code]CtestDlg dlg;[/code]
A co to nam daje? Ano z tego co juz wiemy, uruchamia nam obiekt naszego okienka dialogowego, tego co widac na ekranie :)
Wszystko pieknie, ladnie, ale jak majac drugie okienko dialogowe np. okreslone przez klase <font color="green">CAboutDlg</span> odwolac sie do tego pierwszego ? Musimy tu troszke obiektowo pomyslec. A wiec myslmy :D
CtestApp
|
---- CtestDlg
|
---- CAboutDlg
Z <font color="green">CtestDlg</span> nie odwolamy sie do zmiennych, funkcji i ogolnie klasy <font color="green">CAboutDlg</span>. Poniewaz wszystko jest wylowywane z naszej podstawowej klasy, czyli <font color="green">CtestApp</span> i klasy <font color="green">CtestDlg</span> i <font color="green">CAboutDlg</span> nie maja wzajemnie dostepu do swoich funkcji i zmiennych.
Wiec w odpowiedzi na twoje pytanie. Tworzymy sobie zmienna w klasie <font color="green">CtestApp</span>. Nastepnie w klasie naszego okienka dialogowego <font color="green">CtestDlg</span> modyfikujemy ja np. tak
[code]testApp.zmienna = 666;[/code]
i w naszym drugim okienku dialogowym <font color="green">CAboutDlg</span>
mozemy tak samo do niej sie odwolac, czyli
[code]testApp.zmienna = 777;[/code]
W tym momencie mozesz zmieniac ja, przypisywac do innych zmiennych itp.
To jest chyba najprostszy sposob objasnienia co i jak dziala, a jesli chodzi o inne to chyba w czasie pisania tego prawie ze artykulu :P wpadlem na jeszcze jeden pomysl, ale to jak bede mial chwilke wolnego i czas na potestowanie paru rzeczy :)
Pozdrawiam :)
Jakiego typu zmienną stwożyć w klasie <font color="green">CtestApp</span>?
Jakiego typu zmienną stwożyć w klasie <font color="green">CtestApp</span>?
Nie no teraz to sie powaznie zalamalem, chlip, chlip :/
Gruber, chlopie, takiego typu jakiego potrzebujesz :)
!! SORRY!! Drobne nieporozumienie :-8