Przesyładnie tekstu pomiedzy oknami.

Przesyładnie tekstu pomiedzy oknami.
BI
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam, uczę się javy od kilku dni, znam c/c++. Chciałem napisać aplikacje która będzie składać się z kilku okien. Wszystko działa fajnie, z tym że nie wiem jak przesłać tekst z jednego jTextField znajdującego się na jednej stronie do drugiego. Czy mógłby mi ktoś to wytłumaczyć po krótce??
Pozdrawiam.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Nie bardzo rozumiem. To są przecież zwykłe obiekty. Dane pomiędzy nimi przekazujemy zawsze tak samo - jakimiś metodami. W tym przypadku te okna muszą mieć na siebie referencje.

bogdans
  • Rejestracja: dni
  • Ostatnio: dni
1

Do konstruktora jednego okna przekaż referencje do drugiego okna. Schematycznie

Kopiuj
class Okno1 extends JFrame
...
class Okno2 extends JFrame
{
    private Okno1 okno1;
    Okno2(Okno1 okno1)
    {
        this.okno1 = okno1;
...
Okno1 okno = new Okno1();
new Okno2(okno);

Wtedy w klasie Okno2 masz dostęp do zawartości okna klasy Okno1.

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0
Bieluus napisał(a):

... znam c/c++ ...
Ciekawe stwierdzenie zwłaszcza w przypadku kiedy potrzebujesz typowego rozwiązania które działa w C++.

Lechu_
  • Rejestracja: dni
  • Ostatnio: dni
0

Podepne się pod temat.
W moim przypadku jest C#
Z metod w from1 nie mogę się dostać do form2 ?
Np, żeby przekazać wartość z textbox1 w form1 do textbox1 w form2.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

@Lechu_ to jest znak że powinieneś odstawić marne próby pisania aplikacji z GUI i nauczyć się podstaw obiektowości.

Lechu_
  • Rejestracja: dni
  • Ostatnio: dni
0

obietowość znam, ale ostatni raz C# zajmowałem się 3 lata temu. Najbardziej mnie wkurza to, że jeśli ustawie w textbox1 w form 2 modyfikator na public to i tak kiszka.
W żaden sposób nie mogę się odnieść :(

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

@Lechu_ "obietowość znam"? chyba jednak nie skoro uważasz że zmiana private na public coś by ci dała...

byku_guzio
  • Rejestracja: dni
  • Ostatnio: dni
0

Tak to jest jak się nie odróżnia klasy od obiektu. Pora się zebrać za podstawy.

xxx_xx_x
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 365
0

Możesz też zastosować eventy, trochę ładniejsze obiektowo rozwiązanie bo masz luźniejsze powiązanie, jednak dla małych aplikacji moze to być przerost formy nad treścią ;p

BI
  • Rejestracja: dni
  • Ostatnio: dni
0

Dzieki bogdans. Znam c++ ale tam to było jakoś łatwiej mi się dostać, a tymi sposobami nie działało, może dla tego że nie trzeba było pisać specjalnych metod, jest to dla mnie trochę nowe doświadczenie. Spróbuję tym sposobem - nie wiedziałem jak w javie zrobić referencję do tych okien. Dziekuje za pomoc ;)

Wszystko jest ok, działa mi to aczkolwiek dalej mam ten sam błąd - więc przepraszam, ale pewnie źle sformuowałem pytanie. Myślałem że błąd jest w zapisie, lecz mam dalej ten sam błąd. Chodzi oto że TextField w każdych z tych okien maja prywatny dostęp i nie mogę ich zmieniać z innych. Klasy są w dwóch osobnych plikach, korzystam z NetBeansa, robiłem projekt najpierw w zakładce design, ręcznie a później dodawałem eventy.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

@Bieluus błagam, odstaw to GUI i naucz sie porządnie programować obiektowo. Wtedy takich problemów mieć nie będziesz.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.