zliczanie kliknięć na button

0

Witam,

Tworze strone www za pomoca ktorej mozna sterowac robotem, wszystko szlo gladko, az do teraz...
Ogolnie zasada dzialania jest taka ze klikajac w przycisk ramie robota bedzie sie podnosic...

Nie wiem jak zrobic zeby po kliknieciu w button na Label-u pokazala sie cyfra 1, nastepnie po kolejnym kliknieciu cyfra 2 itd...??

dzieki wielkie za ewentualna pomoc

0

stworz zmienna przechowywana w sesji, przy kazdym kliknieciu pobieraj ja, parsuj na int, inkrementuj, wyswietlaj w labelce, zapisuj do zmiennej w sesji

0

stworz zmienna przechowywana w sesji, przy kazdym kliknieciu pobieraj ja, parsuj na int, inkrementuj, wyswietlaj w labelce, zapisuj do zmiennej w sesji

Hm a mogl by ktos byc tak mily i pokazac na konkretnym przykladzie? Jestem dopiero poczatkującym programistą, ale po tym co napisał RAMIEROBORA wydaje mi sie ze musze stworzyc Nowy Global Aplication Class i w tym pliku Global.asax w miejscu gdzie jest void Application_Start(object sender, EventArgs e) dodac zmienna np. String ZMIENNA; Potem nie wiem jak pobrac ta zmienna z sesji. Z tym parasowaniem to wydaje mi sie ze tez wiem jak osbie poradzic, bo to chyba chodzi o zaminane ze stringa na int32 czyli to bedzie jakos tak:

String Zmienna
Int Zmienna2
Zmienna2 = Convert.ToInt32(Zmienna);

Inkrementacja to chodzi o to?:

Zmienna2++;

No i zapisanie w Labelce czyli:

Label1 = (Zmienna2);

A potem jeszcze musze zapiac zmienna do sesji co wlasciwie tez nie wime jak to do konca zrobic. Dlatego jak by mi mogl ktos sprawidzc czy dobrze napisalem ten kod pozyzej i jak poradzic sobie z tymi zmiennymi w sesji byl bym wdzieczny.

0

Tworzysz zmienna

int ilosc_klikniec = 0;

W metodzie onClick buttona piszesz

ilosc_klikniec++;  // inkrementacja
label1.Text = "Ilosc klikniec na button: " + ilosc_klikniec.ToString();  // wyswietlanie w labelu (ToString() nie jest konieczne)
0

Niestety ale wasze metody nie dzialaja... jak otworze stronke dodaje do zera jeden i zwraca "Ilosc klikniec na button: 1", a po nastepnym kliknieciu nic sie nie zmienia. Wyglada na to ze jest cos nie tak z zapamietaniem nowej zmiennej ktora jest juz 1 a nie 0 ;/ Jakies pomysly?

0
    public partial class Form1 : Form
    {
        private int ilosc_klikniec = 0;

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ilosc_klikniec++;
            label1.Text = "Ilosc klikniec na button1 = " + ilosc_klikniec;
        }
    }

Stworzyłem małą formę, na niej tylko button i label. Wklejam cały kod.
I nie ma prawa nie działać :)

0

Własciwie masz racje wszystko działa jak mówisz , aczkolwiek moja aplikacja ma być aplikacja uzywana przez strone internetową, a co za tym idzie uzywam Visual Web Developer 2008, a tam ciagle pokazuje "Ilosc klikniec na button1 = 1" Z tego co mi sie wydaje jest to zwiazane z tym że po kliknieciu nowa zmienna nie jest przechowywana. jak to zrobic??

0

znalazlem chwilowe rozwiazanie.

Odczytuje zmienna z pliku txt uzywam jej, inkrementuje i zapisuje znow do pliku txt :)

jakby komus przyszedl do glowy lepszy pomysl czekam na info:)

0

przecieŻ Ci ktos wyzej napisal... uzyj sesji

0

badzo chetnie bym uzyl ale nie wiem jak wykorzystac zmienna z sesji w moim kodzie bo jak stworze global.aspx i w nim umieszcze zmienna:

int x;

to potem nie wiem jak jej uzyc w kodzie poniewaz gdy wpisuje zmiennna po prostu tak:

x = 5;

to mi podkresla x i wykakuje blad ze nie ma takiej zmiennej...

Jestem dopiero poczatkujący dlatego pewnie nie wiem jak wyołać zmienna z sessji, chyba ze ktos mi powie:)

0

to uzyj google, az tak ciezko? czy czekasz na gotowca?:>

0

czekam na gotowca:) Albo chociaz powiedz co wpisac w google, bo nie moge znaleŹĆ wpisywałem różne kombinacje - > c# sesje zmienne etc... chyba slepy jestem:)

0

najwidoczniej slepy...

//tak uzywasz sesji, po prostu ladujesz tam stringa
Session["licznik"] = twoja_zmienna_int;

a potem sobie tego stringa rzutujesz;

int liczba = (int)Session["licznik"];

wiecej Ci nic nie powiem, dojdz do tego sam.

0

rzeczywiście ślepy:)

Dziękuje wam bardzo, chyba problem został całkowicie rozwiązany:)

pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1