Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Auto-Moto
Mobilní telefony
Notebooky  |  Tablety
Příslušenství
Wearables  |  Ostatní
Svět hardware  |  Digimanie  |   TV Freak

VS2008 a ListBox

Adam Motvička (65)|27.12.2007 14:11
Stáhl jsem si novou verzi Visual Studia. Vývojové rozhraní vypadá skvěle, ale došel jsem k problému. S programováním GUI mám zkušenosti akorát z VB6, chtěl jsem použít ListBox s více sloupci, ale vlastnost CollumnCount zde není? Jak mám tedy docílit vícesloupcového zobrazení ListBoxu? Jde to vůbec? Nerad bych používal ListView - jde to jinak? Existuje na to jiná komponenta?
RStein (2012)|27.12.2007 14:36
Nenapsal jste, v cem programujete - ale protoze mate zkusenost s VB, tipuji to na compact .Net Framework.
V nem si myslim neni stale naimplementovana vlastnost Multicolumn z dospeleho NF

Budete muset vytvorit ListBox s vlastnosti:
[CODE] LB_SETTABSTOPS [/CODE]
Dale pres SendMessage mu poslete zpravu LB_SETTABSTOPS, abyste vytvoril podporu pro sloupce.
[CODE]
LB_SETTABSTOPS wParam = (WPARAM) cTabs;
lParam = (LPARAM)(LPINT) lpnTabs;

[/CODE]

V nativnim kodu s vyuzitim MFC to jde takto:
[CODE]
int position = LST_PROFILES_TAB_STOP_POSITION;
int tabPositions[] = {position};
lstConfigValues.SetTabStops(LST_PROFILES_TAB_STOPS, tabPositions);

[/CODE]
Adam Motvička (65)|27.12.2007 14:55
Rád bych využil VB nebo VC# spolu s .NET Framework 3.5. Ovšem spolu s "klikoidní" tvorbou GUI :). Proto zkouším VS2008, jinak by mi stačil SharpDevelop. Jde to tedy nějak?
RStein (2012)|27.12.2007 15:25
Nahore to mate napsano:
Musite podedit z Listboxu a pres API dopsat to, co jsem psal vyse.
:) Klikat muzete porad - jen si pridate polozku do toolboxu (resp. v kodu vygenerovanem designerem zmenite tridu z Listboxu na svuj ListboxEx).

Nebo muzete pouzit Listbox2 z OpenNetCF a kazdou polozku si vykreslit, ajk potrebujete.
Pro vase ucely je ale vhodnejsi pouzit Listview - tam je podpora sloupcu automaticka a jednoducha...
Adam Motvička (65)|2.1.2008 00:45
Díky! Vyřešil jsem to nakonec nastudováním ListView :). Líbil by se mi přístup třeba jako ve FlexGridu ve VB6 - něco podobného jako vlastnost .TextMatrix(x, y). Škoda, že tu nic takového není.

Ještě jedna otázečka - první hello world mi šlape, spojím se s databází... Ovšem jen v emulátoru, když aplikaci zkopíruju do svého zařízení, po spuštění mi akorát oznámí že aplikace vyžaduje novější verzi .NET Compact Frameworku. Jak ho jednoduše do zařízení dostat? Využívám verzi 3.5...
RStein (2012)|2.1.2008 02:00
Ve VS.net si muzete vybrat, zda aplikaci spstite v emulatoru nebo ve "windows mobile device" - v pda . Po F5 (Debug) se s aplikaci nakopiruje i CNF.
Jinak hledejte v adresari s VS redistribucni cab CNF.