[C#] Windows Forms. Trzy pytania


(Konrad12315) #1

Witam mam trzy pytania/problemy:

Problem 1: Mam przycisk na Form1 i chce zrobić żeby otwierało nowe okno (nie messagebox).

Zrobiłem więc Form2. Ale za cholerę nie wiem jak zrobić żeby po kliknięciu w przycisk otworzyć nowo zrobione okno. Jak to zrobić?

(Nie wiem bo nie mam skąd się uczyć :expressionless: Może znacie jakąś książke o WF?)

Problem 2: Czy można okno MessageBoxa jakoś nazwać? Bo gdy pokazuje się to okno to jest takie bez imienne.

Problem 3: Jak zmienić nazwę okna? :oops:

Wiem. Jestem totalnym newbie w WF. Moglibyście polecić jakiegoś ebooka o Windows Forms?


(Pixxel Man) #2

1)

private void button1_Click(object sender, EventArgs e)

{

new Form2().Show();

}

2)

MessageBox.Show("tekst_w_okienku", "nazwa_okienka");

3) this.Name = "..."; albo we właściwościach projektu (po prawej stronie)


(Konrad12315) #3

Hmmm z 1) jest problem iż:

Error: visual studio 2008\projects\mist\mist\Form1.h(191) : error C2061: syntax error : identifier 'Form2'

Problem jest w tym:

new Form2().Show();

Niezbyt wiem co zrobić :expressionless:


(Pixxel Man) #4

jeśli klikniesz dwukrotnie na button którym chcesz wywołać formę, edytor doda kod. wpisz w nim to, ew. zastąp Form2 swoją nazwą formy.

nową formę tworzysz w solution explorer (po prawej). PPM na nazwie projektu -> Add -> New Item -> Windows Form.


(Konrad12315) #5

Zrobiłem tak:

Usunąłem stary button. Dodałem nowy. Kliknąłem dwa razy. Edytor stworzył kod. Między { a } wpisałem: new Hacks().Show(); [Hacks bo tak nazwałem nową forme, starą usunąłem]

I ciągle jest ten sam błąd tyle, że zamiast 'Form2' jest 'Hacks'. :expressionless:


(Pixxel Man) #6

może w kodzie dajesz nazwę formy jaką nadajesz jej we właściwościach albo wpisując this.Name = "Hacks". (tytul okienka to nie to samo co jego nazwa).

gdy tworzysz nową formę podajesz jej nazwę Hacks.cs, dalej w kodzie to co miałeś. u mnie wszystko dziala ok.


(Konrad12315) #7

Ok Problem został rozwiązany dzieki pixel_man.

Dziękuje. Temat można zamknąć :slight_smile: