- Apple iPhone 17 Pro Max – fennsík
- Google Pixel topik
- Huawei Watch D2 - nyomás utána!
- iPhone topik
- Rekordérdeklődés a Xiaomi hátsó kijelzője iránt
- Íme, a Moto X70 Air, vagyis Motorola Edge 70 minden oldalról
- Samsung Galaxy S21 FE 5G - utóirat
- Samsung Galaxy S25 FE - fenséges, felejthető vagy felesleges?
- Fotók, videók mobillal
- MIUI / HyperOS topik
Új hozzászólás Aktív témák
-
bpx
őstag
válasz
Speederer #1943 üzenetére
látom már segítenek a többiek, de én kíváncsi voltam milyen rövidet tudok írni - legyen az akármilyen ronda is - úgyhogy itt egy elrettentő példa
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int[] bases = { 16, 10, 8, 2 };
List<TextBox> tb = new List<TextBox>();
private void Conv(object sender, KeyEventArgs e)
{
long l = Convert.ToInt64(((TextBox)sender).Text, bases[tb.IndexOf((TextBox)sender)]);
for (int i = 0; i < bases.Length; i++)
tb[i].Text = Convert.ToString(l, bases[i]);
}
private void Form1_Load(object sender, EventArgs e)
{
foreach (Control c in this.Controls)
if (c is TextBox) { c.KeyUp += Conv; tb.Add((TextBox)c); }
}
} -
kingabo
őstag
válasz
Speederer #1952 üzenetére
Amit én mondtam az 8 sor, ha if nélkül írod meg akkor 4.
Az else ágban a for-ban a sok if helyett egy switch sokkal szebb lenne.
Talán a key down eseménynél meg tudod nézni, hogy melyik gombot nyomta le a véglény, ha ez pl bin-nál nem 0 vagy 1 akkor szólsz neki, hogy ejnye-bejnye.
-
-
fatal`
titán
válasz
Speederer #1945 üzenetére
Akkor pakold tömbbe vagy listába őket (most nem tudom melyik paranccsal tudod az összes formon lévő textboxot egy listába tenni de biztosan lehetséges, msdn-en van leírás is sztem, vagy prog.hu-n is kereshetsz).
Utána meg keydownnál foreacheld végig a tömböt és a senderben lévő adatokat pakold be a többi mezőbe. Elég késő van, nem tudom, hogy ez így működni fog e és nincs előttem VS de egy próbát megér.
Mod: Azt kihagytam hogy egy keydownt/keyupot rendelj az összes textboxhoz. Az aktuális textboxra pedig (sender as TextBox)-ként tudsz hivatkozni.
-
fatal`
titán
válasz
Speederer #1943 üzenetére
Írj rá egy függvényt úgyhogy a változó paramétereket átadod neki mindig.
pl.
private String atvalt(String honnan, int szamrendszer)
{
return Convert.ToString(Convert.ToInt32(honnan), szamrendszer);
}ezután meg kívülről meghívod:
textBox2.Text = atvalt(textBox1.Text, 2)
stb.
Persze az is lehet hogy teljesen félreértettem mit szeretnél
Esetleg kombinálhatod, hogy a textbox1.text az fix és nem adod át paraméterenként, de szerintem úgy csúnyább a kód és ezt később is felhasználhatod, ha mégis máshonnan kell váltani
Ú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!
- Hisense LCD és LED TV-k
- Milyen autót vegyek?
- Apple iPhone 17 Pro Max – fennsík
- Direct One (műholdas és online TV)
- A fociról könnyedén, egy baráti társaságban
- BestBuy topik
- Google Pixel topik
- Mesterséges intelligencia topik
- Győr és környéke adok-veszek-beszélgetek
- Apple asztali gépek
- További aktív témák...
- Playstation 4 Pro 1 TB + kontroller 6 hó garancia, számlával!
- Surface Laptop 5 Touch 13.5 Retina i7-1265U 10mag 4.8Ghz 16GB 512GB Intel Iris XE Win11 Pro Garancia
- Apple iPhone 15 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! R5 8400F / RX 6800 16GB / 32GB DDR5 / 1TB SSD!
- HP 150W töltők (19.5V 7.7A) kis kék, kerek, 4.5x3.0mm + tápkábel
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest