Hirdetés
Köszönjük a sok biztatást, támogatást! Egy rövid ideig még féláron tudsz hirdetni, előfizetni!
Új hozzászólás Aktív témák
-
Egyáltalán nem bántásként írtam, csak az összes találat az első oldalon relevánsnak tűnt - így nem volt kedvem külön linkelgetni
Topmostnál pont az a probléma, hogy a többi form nem takarhatja el... UI kezelő zorderjével kellene valacolni, de asszem ez már meghaladja a google-fu-mat
-
fatal`
titán
Mivel a labeled scopeja a konstruktor és a futása végén meg is szűnik, ezért a fordítónak a másik függvényben fogalma sincs mi az az izeLabel. Csinálj instance fieldet.
És a timer eventje static-ként nem lesz jó
(#6042) rgeorge Emlékeim szerint a timer ugyanazon a szálon fut.
-
Karma
félisten
Ahhoz képest, hogy az előző kódot metrón zötykölődve, telefonon írtam, csak egy dolgot hibáztam el benne: a Color.Blacket nem lehet default paraméternek használni, mert nem konstans. (Meg is szerkesztem a kódot.)
Ezt leszámítva működik, most próbáltam ki egy Forms projektben.
Ide feltettem az egész solutiont. -
Karma
félisten
Pedig csak szintaktika innen, ha a példa működött.
public static class RichTextBoxExtensions
{
public static void AppendWithColor(this RichTextBox rtb, string text, Color color)
{
var length = rtb.TextLength;
rtb.AppendText(text);
rtb.Select(length, text.Length);
rtb.SelectionColor = color;
rtb.SelectionLength = 0;
}
}Szerk.: a harmadik sorból kivettem egy default paramétert.
-
Karma
félisten
Ha ilyet akarsz, nem nagyon tudod megúszni, hogy számon tartsd, mi volt az Append előtti utolsó hossz, és az Append után ezt felhasználva a jó pozíciót jelöld ki. Én írnék egy extension methodot a RichTextBox osztályra (pl. AppendWithColor) néven, ami ezt intézi, és mindenhol ezt használnám.
-
rgeorge
addikt
Nálam ez műkszik:
richTextBox1.AppendText("kékpiroszöld");
richTextBox1.Select(0, 3);
richTextBox1.SelectionColor = Color.Blue;
richTextBox1.Select(3, 5);
richTextBox1.SelectionColor = Color.Red;
richTextBox1.Select(8, 4);
richTextBox1.SelectionColor = Color.Green;
richTextBox1.SelectionLength = 0; -
Karma
félisten
Uh, az kemény. Nézd meg ezt a kódot - a Main függvényt mindenképp, a többi onnantól logikus.
Ezen az úton felül tudod bírálni, hogy mi történjen az el nem kapott exceptionnel. Ha beiktatsz egy Console.WriteLine-t is és parancssorból futtatod a programod, meglesz a stacktrace.
-
-
-
-
Karma
félisten
Filózok folyamatosan a problémán, igazából ha mondjuk ebből a példából indultál ki, akkor az előzőleg említett állításom nem áll meg - egy elrejtett Form az alapja az egésznek, a rendes kontextus az Application.Runnak köszönhetően felépül.
A linkem a konzol alkalmazásokra vonatkozott csak, ez meg nem az.
Viszont felmerült bennem egy kérdés a kódod azon részére, amit nem mutattál eddig: az mWorker változót hogyan deklarálod és mikor hozod létre a BackgroundWorker objektumot? Nem maradt ki véletlenül a new?
Ettől függetlenül a ThreadPool jó dolog
-
Karma
félisten
Amúgy az előző konstrukcióban van valami oka annak, hogy innen próbálod indítani a BackgroundWorkert, nem pedig a SysTrayAppon belül? Drkbl jó úton jár, a BackgroundWorker működéséhez kell a megfelelő kontextus, ami ebben a formában nem áll elő.
A linkelt SO kérdésben is említik az egyszerű megoldást: használj pl. ThreadPoolt. Vagy a C# 5.0-öt használsz, ott az async/await is. (Microsoft.Bcl.Async csomaggal meg régi .NET-en is megy.)
-
Esetleg a Console-hoz nem fér hozzá... Passz. Mindenesetre találtam egy tiédhez hasonló problémát:
http://stackoverflow.com/questions/6165759/using-console-writeline-in-a-backgroundworker-dowork-eventAmúgy ha WinForm alkalmazást fejlesztesz, ahhoz nem lesz console...
-
Használj debug kapcsolókat command line compilerhez és akkor kicsist több lesz a hibaüzenet...
És van command line debugger is.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Gamer PC-Számítógép! Csere-Beszámítás! Ryzen 5 5500 / RX 6600XT / 32GB DDR4 / 512GB SSD
- Apple iPhone 14 Pro 256GB,2026.03.14-ig ALZA Garancia,Újszerű Állapotban,Kártyafüggetlen.
- Dell RTX A4000 16GB
- Gigabyte Aero 15XC (RTX 3070, Intel Core i7 10870H, 32GB RAM,1+TB SSD) Beszámítás! JÓTÁLLÁSSAL!
- Lenovo Thinkpad X280, 12,5" FHD IPS Érintős, I5-8350U CPU, 8GB DDR4, 256GB SSD, W11, Számla, 1 év ga
- HP EliteBook x360 830 G7 i5-10210U 16GB 256GB 13" FHD Áthajtós érintős 1 év garancia
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- iKing.Hu - Apple iPhone 15 Plus Black Használt, karcmentes 256 GB tárhely 3 hónap garancia!
- Lenovo ThinkPad X13 Yoga i5-10310U 16GB RAM 512GB SSD 13.3 FHD Touch 2in1
- BESZÁMÍTÁS! Apple Macbook Pro 16" 2019 i9 64GB 1TB 5500M 8GB garanciával hibátlan működéssel
Állásajánlatok
Cég: FOTC
Város: Budapest