| Martiial Temat założony przez niniejszego użytkownika | WINAPI Listbox » 2016-05-01 17:34:21 Panowie, Panie.
 Czy macie jakiś pomysł jak wkleić w ListBoxa dane ze struktury.
 
 ListBox:
 hlistbox=CreateWindowEx(WS_EX_CLIENTEDGE,
 L"LISTBOX",
 NULL,
 WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | ES_MULTILINE |   ES_AUTOVSCROLL,
 30, 30, 180, 100,
 hWnd,
 NULL,
 hInstance,
 NULL );
 ________________________________________________________________
 Struktura:
 typedef struct _SCAN_RESULT
 {
 TCHAR		szScanValue[MAX_PATH];			//	barcode value(compatible to szScanMaxValue)
 TCHAR		szScanType[MAX_PATH];			//	barcode name.
 TCHAR		tcCodeID;						//	barcode ID.
 BAR_TYPE 	barType;						//	barcode type(BAR_TYPE).
 TCHAR		tcSymLetter;					//	barcode Letter(for 2D).
 TCHAR		tcSymModifier;					//	barcode Modifier(for 2D).
 WORD		unScanLength;					//	barcode value's length.
 TCHAR		szScanMaxValue[MAX_PATH*15];	//	barcode value.(if you read to large barcode(have the many data) szScanValue is not enough fill scan data. so as use as possible this variable.
 //	Reserve field
 DWORD		dwDecodeTime;					//	DecodeTime (ms)
 DWORD		dwResultReserve02;				//	Reserve field 02.
 } SCAN_RESULT, *PSCAN_RESULT;
 _________________________________________________________________
 
 Stworzyłem coś takiego:
 _SCAN_RESULT wynik;
 I się zastanawiam jak wstawić. Bo jak zrobiłem:
 
 CString str = wynik.szScanValue;
 int lenghthlb=GetWindowTextLength(hlistbox);
 for (int i = 0; i < lenghthlb; i++)
 {
 hlistbox.AddString(str);
 }
 
 To wywaliło mi błąd:
 
 1>.\cAB11.cpp(240) : error C2228: left of '.AddString' must have class/struct/union
 1>        type is 'HWND'
 1>        did you intend to use '->' instead?
 
 I odrazu jak moglibyście mi pomóc z napisaniem kodu,że
 zawartość listboxa dajemy w plik txt, który na podstawie nazwy zawartej w hedit jest tworzony.
 
 | 
|  | 
| Gibas11 | » 2016-05-01 17:58:09 A  hlistbox  to nie jest przypadkiem wskaźnik? Jak chcesz wywołać metodę obiektu na który wskazuje... przeczytaj log kompilatora, bo opisał Ci rozwiązanie w całkowicie przystępny sposób. EDIT: Sprawdziłem, HWND jest wskaźnikiem bo HWND = HANDLE = PVOID = void*. Btw dlatego nie używa się WinAPI kiedy można. | 
|  | 
| Martiial Temat założony przez niniejszego użytkownika | » 2016-05-01 18:06:16 Panie, nie musisz mnie do tego przekonywać żeby WINAPI unikać jak ognia. Sytuacja mnie do tego zmusiła, bo na WIN CE ciężko używać czegoś innego.  | 
|  | 
| Gibas11 | » 2016-05-01 18:10:00 | 
|  | 
| Martiial Temat założony przez niniejszego użytkownika | » 2016-05-01 18:13:13 Qt? Pierwszy raz widzę coś takiego. To jakaś biblioteka do c++?
 EDiT:
 
 CListBox listbox;
 CString str = wynik.szScanValue;
 int lenghthlb=GetWindowTextLength(hlistbox);
 for (int i = 0; i < lenghthlb; i++)
 {
 listbox.AddString(str);
 }
 
 
 hlistbox=CreateWindowEx(	WS_EX_CLIENTEDGE,
 L"LISTBOX",
 NULL,
 WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | ES_MULTILINE | ES_AUTOVSCROLL,
 30, 30, 180, 100,
 hWnd,
 NULL,
 hInstance,
 listbox );
 
 Still not working, gdzie skopałem.
 
 Po zeskanowaniu kodu, dalej listbox jest pusty.
 | 
|  | 
| Gibas11 | » 2016-05-01 18:37:57 Tak, nie pozwala na wszystko to co WinAPI (np. obsługę koloru tekstu w konsoli), ale wystarczy do napisania aplikacji okienkowej a z wykorzystaniem Qt Creator (b. dobre IDE) sam layout zrobisz w 5 minut i zostaje sam backend. Tu masz moje kółko i krzyżyk (https://github.com/KoczurekK/tic-tac-toe ), łącznie 1.5h pracy, ale nigdy w życiu nie widziałem wcześniej Qt, więc jest w to wliczony czas nauki. | 
|  | 
| Martiial Temat założony przez niniejszego użytkownika | » 2016-05-01 18:43:48 A jak kodzik który dałem wyżej? | 
|  | 
| Gibas11 | » 2016-05-01 18:49:31 A teraz już kompiluje się poprawnie?Nawet nie mam Windowsa na PC od kilku lat a w WinAPI nie programowałem jeszcze dłużej, więc poza rozwiązywaniem błędów kompilacji niewiele umiem, niech wypowie się ktoś kto tego używa. :|
 | 
|  | 
| « 1 »  2 |