string[,] slovnik = { {"beat,"beat","beaten","bít,tlouci"} , {"bite","bit","bitten","kousat/štípat"} , {"buy","bought","bought","koupit"}, {"catch","caught","caught","chytit"} };
private void dalsiSloveso()
{
indexSlovesaVeSlovniku++;
int slovnikSloves = slovesVeSlovniku / 4;
if (slovnikSloves < indexSlovesaVeSlovniku)
{
TextBox ceskyVyznam = ceskyVyznamPole;
TextBox anglickyInfinitiv = anglickyInfinitivPole;
TextBox pastSimple = pastSimplePole;
TextBox pastParticiple = pastParticiplePole;
ceskyVyznam.ReadOnly = true;
anglickyInfinitiv.ReadOnly = true;
pastSimple.ReadOnly = true;
pastParticiple.ReadOnly = true;
kontrolaTlacitko.Enabled = false;
zkouseniProbiha = false;
zacitZkouseniTlacitko.Text = "Spustit zkoušení";
vyhodnoceni();
return;
}
else
{
TextBox ceskyVyznamP = ceskyVyznamPole;
string ceskyVyznamO = slovnik[indexSlovesaVeSlovniku, 3];
ceskyVyznamP.Text = ceskyVyznamO;
}
}
Hlásí to exception IndexOutOfRange na zvyr. radku, hlásí to proto, že indexSlovesaVeSlovniku je větší než počet sloves ve slovníku (4). Tento počet je ovšem uložen v proměnné slovnikSloves, a je testován pro předcházení těmto situacím! Jak je možné, že to nefunguje? :smile19: