Dobrý den. Mám ve formu tři TextBoxy. Dva jsou nabindované na položky v databázi, z toho jeden je Enabled=False, protože hodnota v něm se mění z nějaké funkce po stisku nějakého buttonu nebo při přechodu na další položku databáze (čili není možné ho editovat přímo). Druhý nabindovaný je možné měnit přímo. U třetího chci, aby rovnou zobrazoval hodnotu vypočtenou na základě hodnot těch dvou TextBoxů, např. tedy TextBox3.text = TextBox2.text / TextBox1.text (teď neřeším pro jednoduchost přetypování). V Accessu se dá do vlastnosti formulářového TextBoxu přímo zadat vzoreček, který se automaticky provede, aniž by bylo třeba volat nějaký handler události, tzn. při jakékoli změně TextBox1.text nebo TextBox2.text se změní i ta vypočtená TextBox3.text. Nenapadá mně, jak a kam zadat ten vzoreček, aby docházelo "automaticky" k přepočtu té hodnoty. Chápu, že správně by asi bylo vytvořit proceduru, která vypočte tu novou hodnotu TextBox3.text a přiřadit jí jako handler pro události TextBox1.TextChanged i pro TextBox2.TextChanged . Jenže pro událost TextBox1.TextChanged už jeden obslužný handler mám a tak si nejsem jist, zda stejná událost vyvolá všechny handlery, které jsou pro ní definované a jestli nějak záleží na pořadí toho volání atd. Proto jsem myslel, že nejjednodušší by bylo někde nadefinovat, že vlastnost TextBox3.text je automaticky vypočítávaná hodnota a víc se o to nestarat, ale to asi přemýšlím špatně, že? Děkuji. Petr Vavřinec
|