Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Jakub Mudra
Tvůrce
Avatar
Jakub Mudra:16.10.2012 17:47

Ahoj,mam problém,když zadam:

string cau = odpovedCau.Text();

hodí mi to error:

Error   9       A field initializer cannot reference the non-static field, method, or property 'ChatingBot.default_Form.odpovedCau'
Odpovědět
16.10.2012 17:47
Uvnitř jsou všichni stejní...
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Jakub Mudra
matesax:16.10.2012 17:52
string cau = odpovedCau.Text;
 
Nahoru Odpovědět
16.10.2012 17:52
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Jakub Mudra
David Jančík:16.10.2012 17:53

Pošli zdrojový kód :)

Nahoru Odpovědět
16.10.2012 17:53
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:16.10.2012 18:13

Není třeba - leda by mu to moje nešlo - ale spíš půjde... :) (Text je accessor)

 
Nahoru Odpovědět
16.10.2012 18:13
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na matesax
David Jančík:16.10.2012 18:22

Já měl za to, že v odpovedCau je nějaká instance jeho Třídy. Pokud je to nějaká komponenta, pak je samozřejmě Text vlastnost a né metoda.

Nahoru Odpovědět
16.10.2012 18:22
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:16.10.2012 19:12

Vidím to na TextBox - že si tam napíšeš odpověď... (A nepotřebuji kontext... :) )

 
Nahoru Odpovědět
16.10.2012 19:12
Avatar
Jakub Mudra
Tvůrce
Avatar
Jakub Mudra:16.10.2012 19:42

jo,je to textbox

Nahoru Odpovědět
16.10.2012 19:42
Uvnitř jsou všichni stejní...
Avatar
Jakub Mudra
Tvůrce
Avatar
Jakub Mudra:16.10.2012 19:45

pořád nefunguje :(
kód:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ChatingBot
{
    public partial class default_Form : Form
    {
        public default_Form()
        {
            InitializeComponent();
        }

        string cau = odpovedCau.Text;

        private void odkaz_na_kalkulacku_Click(object sender, EventArgs e)
        {

            // vytvor instaci formu
            kalkulacka.kalkulacka druhyForm = new kalkulacka.kalkulacka();
            druhyForm.Show();
        }





    }
}
Nahoru Odpovědět
16.10.2012 19:45
Uvnitř jsou všichni stejní...
Avatar
Jakub Mudra
Tvůrce
Avatar
Jakub Mudra:16.10.2012 19:50

EDIT:// Už sem to rozchodil,obalil sem :

public void odpoved(object sender, EventArgs e)
        {
            string cau = odpovedCau.Text;
        }

funguje,dk za rady

Nahoru Odpovědět
16.10.2012 19:50
Uvnitř jsou všichni stejní...
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Jakub Mudra
David Jančík:16.10.2012 19:51

Dej to do nějaké metody ;) Nebo před to napiš static

Nahoru Odpovědět
16.10.2012 19:51
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Jakub Mudra
Tvůrce
Avatar
Jakub Mudra:16.10.2012 20:03

ještě dotaz,jak vypíšu do resultu promněnou?

case "cau":
                    result = string.cau ;
                    break;

??
to mi ale nejde.

Nahoru Odpovědět
16.10.2012 20:03
Uvnitř jsou všichni stejní...
Avatar
Jakub Mudra
Tvůrce
Avatar
Jakub Mudra:16.10.2012 20:30

Nebo spíš,jak do case dostanu promněnou?

Nahoru Odpovědět
16.10.2012 20:30
Uvnitř jsou všichni stejní...
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Jakub Mudra
David Jančík:16.10.2012 20:37

Pročti si tutoriály ;) Tohle jsou zbytečné dotazy.

Nahoru Odpovědět
16.10.2012 20:37
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Jakub Mudra
matesax:17.10.2012 6:36

Čeština? "_"? Ani jedno do kódu nestrkej... Používej CamelCase.

http://cs.wikipedia.org/wiki/CamelCase

Respektive - názvy proměnných začínají malým, ale další slova v nich velkým. Vlastnosti, třídy,... začínají velkým.

A vůbec k názvům:

odkaz_na_kalkulacku - z toho opravdu netuším, o co GO...

odpovedCau bych viděl na: userResult

K čemu tam je:

using System;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Data;
 using System.Drawing;
 using System.Linq;
 using System.Text;
 using System.Windows.Forms;

Stačí:

using System;
using System.Windows.Forms;

Zbytek vůbec nepoužíváš...

 
Nahoru Odpovědět
17.10.2012 6:36
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:17.10.2012 7:05

Však nemá češtinu v názvech. Kde jsi to sebral? Podtržítka v názvech být mohou, ale dávám přednost jednoslovním názvům objektů a metod.

Nahoru Odpovědět
17.10.2012 7:05
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Kit
matesax:17.10.2012 7:07
string cau = odpovedCau.Text;

         private void odkaz_na_kalkulacku_Click(object sender, EventArgs e)
         {

             // vytvor instaci formu
             kalkulacka.kalkulacka druhyForm = new kalkulacka.kalkulacka();
             druhyForm.Show();

Aha...

No tak já nevím, ale v C# se zásadně používá CamelCase...

Ještě mi řekni, že i toto je OK:

kalkulacka.kalkulacka

...

Editováno 17.10.2012 7:10
 
Nahoru Odpovědět
17.10.2012 7:07
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:17.10.2012 7:11

A kde máš tu češtinu? Všechny názvy jsou podle pravidel. I když jsou některé poněkud divné, například "kalkulacka.kal­kulacka".

Nahoru Odpovědět
17.10.2012 7:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:17.10.2012 7:12

"kalkulacka" není české slovo.

Nahoru Odpovědět
17.10.2012 7:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Kit
matesax:17.10.2012 7:14

A to je tedy Angičtina? Je to Čeština bez diakritiky... Ano - na malých projektech si to můžeš dovolit, ale je snad lepší naučit se používat Angličtinu již od začátku...

Čechu - Čeština...

Sám jsem od začátku používal Angličtinu - a jak se mi to teď hodí...

Editováno 17.10.2012 7:17
 
Nahoru Odpovědět
17.10.2012 7:14
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:17.10.2012 7:19

Není to Angičtina ani Angličtiona. Jsou to nesémantické názvy tříd a metod. Pro pochopení takového programu jsou nutné komentáře a to je špatně.

Nahoru Odpovědět
17.10.2012 7:19
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Kit
matesax:17.10.2012 7:23

No já jsem tedy nikdy nepoužíval komenty... Naopak - Angličtina nabízí skvělou terminologii - co v Češtině napíšeš 3 slovy, v Angličtině jedním. Nechápu, že zrovna ty mi tvrdíš, že není lepší používat Angličtinu...

 
Nahoru Odpovědět
17.10.2012 7:23
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:17.10.2012 7:29

V tom případě nechápu, proč v programech píšeš víceslovní názvy proměnných a metod, když ti stačí jedno slovo.

Nahoru Odpovědět
17.10.2012 7:29
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:17.10.2012 7:47

... a také nechápu, proč používáš Pascal Case, když propaguješ Camel Case...

Nahoru Odpovědět
17.10.2012 7:47
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 23 zpráv z 23.