Diskuze: C# Stejný kód, který na jednom PC funguje a na druhém ne. Kde by mohla být chyba?
Člen
Zobrazeno 8 zpráv z 8.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Podle mě bude problém při detekci toho stisknutí.. Tento problém bych asi řešil tím, že bych to zkusil přes win api.. Koukni sem http://www.codeproject.com/…Hooks-in-NET
Když tak mně oprav - vypadá to, že spouštíš projekt ve VS a ten
projekt byl stvořen někým jiným na jiném počítači.
Pak budeš muset v okně properties v událostech nastavit znova u KeyPress,
nebo KeyDown nebo nevím kterou používáš handler na tu metodu "metoda"
Nene, napsal jsem to sám na svém PC, ale nešlo mi to, tak jsem to poslal kamarádovi, který žádnou chybu nenašel a normálně mu to šlo spustit.
V první řádě bych zjistil, jestli Keydown event funguje. uprav metoda na následující:
private void metoda(object sender, EventArgs e) {
MessageBox.Show("Stisknuta klávesa!");
...
a spust to. Pokud při mačkání kláves nevyskočí okno, máme problém.
Ježiši. Teď na to koukam, ty to kontroluješ timerem? Na tohle je
eventHandler, který zavolá funkci pokaždé, když zmáčkneš klávesu.
Ve WPF:
this.KeyDown += MainWindow_KeyDown;
//a následná funkce volaná při stisku
private void MainWindow_KeyDown(object sender, KeyEventArgs e) {
posX += 40;
pictureBox1.Refresh();
}
Teď si z hlavy nepamatuju, jak to přesně je, ale ze sender objectu se dá zjistit, která klávesa to byla. Nicméně tohle je dobrý start, ten Timer z toho vyhoď.
Jestli to děláš ve WF, tak pokud mi paměť slouží dobře, tak je to tam stejně, jen se to možná jmenuje KeyPressed. Ale google vždy poslouží.
Nejspíš sem to správně nepochopil. Kde ten tvůj kód má být teda napsaný ? V metodě ?
Zobrazeno 8 zpráv z 8.