Witam Jestem baaaaardzo początkujący w środowisku delphi6 chciałem zrobić programik do czegoś tam , mniejsza o to mój problem polega na tym ze nie moge przypisać zmiennej string: mam listbox1 w którym jest kilka pozycji potrzebuje zamienić je na cyfry procedure TForm1.x1Click(Sender: TObject); var x, y:string; begin x:=listbox1.Items[listbox1.itemi...
witam czytających: Spróbuję swój problem przedstawić bez podawania kodu źródłowego, który jest banalny. Mam zadeklarowane dwie zmienne (umownie x1 i x2) typu PChar. Zczytuję 2 łańcuchy z pól Edit i dokonuje zamiany typów za pomocą funkcji StrPCopy na PChar przypisując je w x1 i w x2. I tutaj dzieje się coś czego nie rozumiem... gdy w x1 "wpisuję" wartość...
1. Nazwa funkcji nie może pokrywać się z nazwą programu 2. W Delphi niejawną zmienną zwracającą wartość funckji jest zmienna Result 3. Do rozdzielania parametrów procedur/funkcji stosuje się średnik a nie przecinek. 4. Co to za wywołanie bez parametrów (25 linia) 5. Brakuje enda jednego w funkcji odczytu. 6. Prawdopodobnie następstwo 5.
W pascalu takie cos (lub podobne) robiło z reala np 2.12345 liczbe 2.12 Czy w Delphi6 da sie cos podobnego zrobic? Czy trzeba do tego cala procedurke pisac (wsumie juz ja napisalem, ale zastanawiam sie czy latwiej sie nie da :) Albo inne pytanie - czy jest jakis prosty sposob zaokraglania realów do np 2 liczb po przecinku ? Zamykam. - arnoldziq
Przypomnijcie mi bo nie mogę sobie przypomnieć jak dobrać się w Delphi do zmiennych systemowych takich jak: nazwa aktualnie zalogowanego użytkownika, katalog Windows, grupa, nazwa komputera itp...
Witam W programie do zmiennych przypisuje zawartość z label. s:string; s:=label1.caption; Załózmy, że na początku zawartość label to - poznan12 po kliknięciu w button label zmienia się na - poznan34 Czy można sprawdzić czy string uległ modyfikacji ??
Witam pisze soft w delphi do komunikacji z uC , w StringGird jest 8 komórek z której kazda może przyjąc 0 lub 1 ,z tych 8 komórek chcę dokonać konwersji na zminną typu byte i przesłać do PC ,jak i również odczytać z uC zmienną Byte i przetworzyć ją na bit ,jak tego dokonac w delphi ?
Witam. Mam procedurę napisaną w C++, którą umieściłem w bibliotece DLL. extern "C" { __declspec (dllexport) void testStr (char *strP) { MessageBox(0, strP, "-", 0); } } Usiłuję tą procedurę wywołać w Delphi procedure TMainForm.est1Click(Sender: TObject); var F1 : Pchar;...
Witam wszystkich. Tworzę właśnie program i napotkałem problem, którego sam rozwiązać nie mogę, mimo iż naprawdę przejrzałem wiele pozycji. Otóż w Form4 mam zmienna s:integer, która przyjmuje rozne wartosci w zaleznosci od zaznaczenia opcji w RadioGroup. Chcę aby wartosc s bylo mozna wykorzystac w Form5 np. W Form4 s bedzie mialo wartosc 10, to chce...
Witam. Mam pytanie, gdzieś widziałem taki sposób ale powtórne odszukanie niestety zakończyło się niepowodzeniem, a może porostu nie mogę znaleźć bo się nie da... ,ale do rzeczy. mam typ TRec = record ... end; TTabRec = array[0..100] of TRec; var ListaRec: TTabRec; tmpRec: TRec; Obliczenia wykonuję na tmpRec i jeśli zdecyduje że się nadaje...
Witam. cnd.. optymalizacji Chodzi za mną od dłuższego czasu taki pomysł, żeby zamiast kopiować wartość rekordu ze zmiennej tymczasowej do innej zmienne np. w tabeli array procedure AdresyPamieci_Zamien (_ObszSour, _ObszDest: PObsz); var Adr_ObszSour, Adr_ObszDest: Pointer; begin // Adr_ObszSour:= _ObszSour; Adr_ObszDest:= _ObszDest;...
Chcę zrobić coś takiego a mianowicie nadać zmienną np. var Zmienna : Byte; i podczas uruchamiania aplikacji sprawdzania jej wartosci która będzie zapisana w pliku exe tej aplikacji. Równiez w programie jak wykonam pewną czynność to będę mógł zmienić jej wartość i zapisać w pliku exe aplikacji Czy jest taka możliwość przechowywania i edycji zmienej...
Witam. W swoim programie używam wątków do obliczeń na dość dużych tablicach. Obliczenia funkcjonują świetnie, wszystkiego nauczyłem się dzięki temu postowi: - a program w postaci raportów w plikach tekstowych oddaje dokładnie te wyniki, których potrzebowałem. W zasadzie z pracy wątków jestem niezwykle zadowolony. Wcześniej w pętlach deklarowałem standardowo...
Witam Poszukuje rozwiązania jak sprawnie zorganizować komunikację na RS bardzo mi się podoba pomysł zapożyczony z magistrali Bus Na przykład wysyłam ramke 0x50 0x04 0x68 0x28 0x2F 0x3B. - 1. Pierwszy bajt jest Identyfikator/adress źródła, w tym 0x50 w przypadku który jest Klawiatura, - 2 Bajt 0x04 oznacza ile jest bajtów samej wiadomości. - 3 Bajt,...
Witam jak zadeklarować zmienną ( b : array[0..3] of byte ) pod konkretnym adresem gdzie znajduje się już inna zmienna ( i : int32 ) tak, żeby bajty b[0]..b[3] były równoznaczne z bajtami zmiennej int32 ? chciałbym żeby to działało w dwie strony czyli zmiana bajtów w tablicy zmienia wartość zmiennej int32. wymyśliłem rozbicie na piechotę np testowe przerzucenie...
W tabeli "Magazyn" , pole "MagazynId" rekord "ZW158", "AG122" szukam identycznego rekordu w tabela "Zywność", lub tabeli "AGD". Przerabiam wynik z tabeli "Magazyn", na nazwę tabeli. [syntax=delphi] // Przypisanie wartości zmiennej Marka. Utnij:= ResultMagazynId; if Length(Utnij) > 2 then // Jeżeli znaków wiecej niż 2 to... Delete(Utnij, 3, 100); //...
Witam. Piszę mały programik, który po wpisaniu słowa/zdania odwróci je (lama da wynik amal). Sprawa bardzo prosta przy stałej wartości znaków i tablicy, ale... Muszę to jakoś zrobić na zasadzie tablicy dynamicznej jak w c++ czyli tab:array[1..liczbaznakow] of char; ale tak w ten sposób się nie da. Wiem, że są tablice dynamiczne w TP, ale nie umiem ich...
Witam, piszę program, który wyprowadza równania stanu dla przekształtników energoelektronicznych. Podczas rozwiązywania układu równań metodą eliminacji Gaussa równania robią się zbyt długie i stwarza mi to problem. Mój problem polega na tym, że potrzebuję funkcję która będzie mi upraszczać wyrażenie algrebraiczne np: wyrażenie: R1+R2+2*(R1+R2)/(2) sprowadzi...
plik : TextFile; ... assign(plik,"plik.txt")... reset(plik); while not EOF(plik) do begin readln(plik); readln(plik,zmienna1,zmienna2); end; close(plik); readln(plik); czyta linie z pliku nie zapisujac nigdzie danych ;]
Spróbuj zrobić rzutowanie (tak się robi w delphi): var ZmiennaA : Integer; ZmiennaB : Real; begin ZmiennaA := Integer(ZmiennaB); end; Gdzie ZmiennaA to miejsce, gdzie trafi przekonwertowana na inny typ ZmiennaB Wiecej na ten temat znajdziesz tutaj: [url=]Link
Ja bym to zrobił zupełnie inaczej. Po pierwsze nie widzę sensu aby ilość "RadioButtonów" była uzależniona od liczby pytań... Chcąc dodać/Zmienić pytanie musisz Dodawać/edytować Kolejne RadioButtony... A gdyby tak było ich tylko 4 i Jeden Label? Powiedzmy, że po uruchomieniu aplikacja wczytywałaby z pliku textowego pierwsze pytanie i 4 odpowiedzi. Odpowiadasz...
Dziekuje. Zawroce Wam jeszcze glowe czyms takim: Mam 4 bajty - 44 6F 0C CD, kazdy zapisany pod inna zmienna. Jak je zlozyc do "kupy" zeby podstawic do waszej funkcji i zeby wyszlo mi 956.200012 Dzieki za odpowiedz. Pozdrawiam Jarek.
Dzieki. Teraz jest git :) Mam jeszcze jeden problem. Pisze wlasnie program w delphi, ktory ma duzo zmiennych i chcialbym te zmienne pogrupowac w klasy lub jakies struktury. Na codzien programuje w VisualC++ ale ten program musze zrobic w Delphi i krew mnie zalewa. Robie cos takiego: dane = class nrfab:string; nsi:string end; potem po var: d_o:dane;...
Rzeby Ci pomóc wpierw trzeba się dowiedzieć o co Ci dokładnie chodzi - słowo binaryzacja niewiele mówi. A kawałek kodu masz tu: var InvertRys:Array[0..3*1024*768]of Byte; - zmienna globalna procedure LoadBMP(FileName:String;var W,H:Word;var Bits:Pointer); var Header:array[1..54]of byte; Zp:file; Result,i:integer; BiBitCount,Temp:byte; BiSizeImage,bitsize:dword;...
Ja zrobilem cos takiego, przykladowo dla 10sekund. licznik:=licznik+1; if licznik>50 then begin zapalenie swiatla end; Problem jest w tym ze wiem jak wyzerowac licznik ale gdziekolwiek go wpisze jest caly czas zero i swiatlo gasnie. Zeruje licznik poleceniem licznik:=0. Drugi problem to ze to zliczanie zaczyna sie z startem programu czyli jak zaktyje...
Mianowicie do pamięci lasera wysyłam małą ilośc, bo tylko 1000 pkt. Laser potrafi 100pkt/s wyświetlić na sekundę. (wydaje mi się, że obrazek wyświetlony w 1 sek. będzie w miarę rozpoznawalny). Obraz musi być w postaci kwadratu o rozmiarze 4095x4095. Wartośći X i Y 2047 jest centrum obrazu. (A więc bitmapa może być o większym rozmiarze ale stosunek jej...
Od niedawna zacząłęm programować w delphi3 (takie mam na uczelni), postanowiłem stworzyć program notatnik (nie kopie windosowskiego). Wygląd programu wymyśliłem następujący, jedno duże pole typu memo małe edit przycisk zapisz i zamknij. Program działa kiedy przycisk zamknij zaprogramuje tak, że zapisuje zawartość obiektu nemo w pliku txt o nazwie z...
Mam zapis transmisji ściągnięty z magistrali szeregowej ultra sztuczką magiczką, za pomocą szpecjalnego konwertera. Po otwarciu w programie winhex, bez problemu da się odczytać kolejne ramki tego protokołu. A teraz w czym problem... Chce napisać program (a znam się na obróbce stringów, mam w tym jakieś doświadczenie) tylko nie umiem przerobić tego co...
Czesc Chcialem zapytac jak pobrac tekst z komponentu edit, by pozniej dokonac na nim zmieny na bitach. Chodzi o to, ze pobieram sobie jeden znak z ciagu np z:=edit1.text Przeniosłem z działu Komputery Software
Witam Nie mogę poradzić sobie z prostym problemem. Mianowicie jak przepisać wynik zapytania sqlowego do zmiennych delphi. Przykładowo wywołuje w programie jakies zapytanie w efekcie dostaje jakies dane (które moge sobie np. wyswietlic np za pomoca komponentu DBGrid) interesuje mnie jak te dane przepisac do zmiennych w delphi np do tablicy. Pozdrawiam...
procedure TForm1.FormCreate(Sender: TObject); var P:Tpicture; begin P:=Tpicture.create; P.LoadFromFile('xxx.bmp'); end; To jest ładowanie pliku bitmapy do zmiennej potem możesz ja wyświetlić: porocedure xxx; begin image1.Picture := P; end;
Dzięki Jednym z powodów było nie ustawienie zmiennej 'z' na wartość 1. Drugi to taki że zmienna tablica była źle zadeklarowana. Powinno być tablica:array [1..24,1..80] of string; Jak widać diabeł tkwił w bardzo drobnych szczegółach które mi umkneły.
Witam. Mam komponent Cport i chciałbym przy jego pomocy wykonać serię pomiarów a wynik każdego kolejnego zapisać w tablicy. Jednak coś się sypie i nie wiem czemu. Mógłby ktoś zerknąć na kod i powiedzieć gdzie mogę popełniać błąd? Kod poniżej: Wysłanie do METEXa literki D (zmienna bajt): procedure TForm1.Button17Click(Sender: TObject); begin...
Ale co chcesz uzyskać? Przycisk włącz/wyłącz? Przycisk, którego działanie zależy od innego przycisku? Po co tak? Jeżeli zamiast tego drugiego przycisku użyłbyć checkboxa to będzie bardziej naturalnie. A może chodzi ci o to czy masz włączyć czy wyłączyć w zależności od aktualnego stanu? To wtedy nie potrzebujesz ani przycisku, ani checkboxa tylko stan...
Witam wszystkich Temat tyczy się Scenica z 2005 roku z silnikiem 1.6.16 v z kołem zmiennych faz firmy delphi. Koło zostało zmienione na nowe. Samochód dobrze odpala, silnik na biegu jałowym pracuje cicho i posiada odpowiednią moc. Problem zaczyna się objawiać przy około 2000 obrotów wtedy zaczyna być słyszalny odgłos tyrkotania z okolicy rozrządu. Zawór...
Te rekordy są stałej czy zmiennej długości? Czy znana jest ich ilość? Generalnie, przekazując z/do dll dane można to na kilka sposobów zrobić. Najczęściej preferowany przez MS, to odpytanie DLL o to, ile danych potrzebuje (jeśli nie jest to stały rozmiar), rezerwacja pamięci i przekazanie wskaźnika do tego obszaru, w którym DLL zapisuje, a caller sobie...
Bo jest LF i CR. Nie wiem co to znaczy w tym monitorze ale sie domyślam. Line Full i Carriage Return To Enter. BASCOM go wysyła. A Len = 3 bo widocznie ten monitor Enter traktuje jako jeden znak. Zawsze LF i CR są w takiej kolejności. U Ciebie też tak jest, ale ten monitor CR przerzuca do kolejnej linii i wygląda jakby CR było przed LR. Ale to nie ma...
Mój program ma do przeszukania plik o objętości od kilkuset kB do kilkudziesięciu MB max. Robię to w ten sposób, że wczytuję cały plik do bufora w postaci tablicy (RAMu na pewno nie braknie ;) ). Potem od początku bufora pobieram do zmiennej "ramkę" np. 10 bajtów(długość szukanego ciągu), sprawdzam czy zawiera to czego szukam, a potem przesuwam ją o...
A, to jak chodzi o losową fugurę, to najlepiej zacząć od tego, aby utworzyć je dynamicznie i zapisać do tablicy. Ale nawet jeśli nie, to możemy takową tablicę utworzyć na podstawie istniejących: [syntax=Delphi]var Shapes: array[0..9] of TShape; ... d:=0; for i:=0 to ComponentCount-1 do if Components[i] is TShape then Shapes[d]:=Components[i];[/syntax](piszę...
Dodanie logowania, jest w w takim przypadku jak twój bajecznie proste. Np. : 1. Metoda "bez kombinowania": - dodajesz do wywołania każdej metody pola 'user' i 'pass' Jeśli mówimy 'metoda', a SOAP jest de facto obiektowy, wystarczy się zautoryzować przy tworzeniu obiektu. Jak się uprzeć, da się to używać proceduralnie, wtedy miałbyś rację. Ja czekam...
Witam. Szuka, szukam i nie mogę znaleźć więc prosze o wskazówki - w jaki sposób poza "SHFileOperation" można wykonać operacje na folderach takie jak: - zmiana nazwy - przenoszenie - kopiowanie - usuwanie wspomniany SHFileOperation niezbyt mi odpowiada bo to jest kopiowanie przez system a nie moją aplikację i są wyświetlane komunikaty i okienka z windows...
Z tego co zauważyłem to jest różnica przypisania zmiennej w figurach 1,2,3,a w 4 jest r. Chodziło mi o to, że tam dokonujesz konwersji z Str na Int, a w figurze 4 z Int na Str - co zwraca błąd, bo wartość w Edit1.Text jest - jak sama nazwa wskazuje - tekstem. PS. Na ile pamiętam Delphi to end. z kropką stawiało się na końcu programu, a masz dwa end....
zapamiętaj wynik w zmiennej na koniec pętli, wykorzystuj we wczesniejszej fazie. var old, i: Integer; ... old:=0; for i:=0 to 10 do begin roznica:=i-old; old:=i; end;
Witam. Przykład jest zrobiony na podstawie gotowca, chce opanować watki, ale ciągle czegoś brakuje. W tym przypadku mam problem z synchronizacją błąd dostępu 6 i jak kliknę na wątek to się pokazuje jeden progresbar, który zaczyna naliczać i staje. Bardzo proszę o jakieś nakierowanie albo wskazanie błędów, bo pewnie na jednym się nie skończy. Jest moduł...
Dziwne zjawisko czy ktoś mi potrafi wyjaśnić obecność pól o nazwach zaczynających się literką f w helpie DELPHI5 dcb fbinary,fOutxCtsFlow,fOutX,fOutxDsrFlow,... itp. pola te prawdopodobnie nie występują w DCB, gdy kompiluję program odwołujący się do tych pól, stwierdza niezidentyfikowaną zmienną. W związku z tym nie bardzo wiem, jak z poziomu...
A jakie biblioteki trzeba załadować aby działało to TryStrToFloat albo te standardowe funkcje. Bo mi kompilator podczas kompilacji pokazuje call to undefinde function TryStrToFloat i lipton. Może dlatego bo ja w Borland Builder programuje a to nie to samo co Delphi. Też zmieniają te języki. Nie może być 1 uniwersalny C...
Sam skrypt to nic innego jak pliczek bat (nie pytaj się mnie czemu, to nie mój pomysł) wywoływany przez program napisany w Delphi. Bacik wywołuje jakieś polecenie i wynik zapisuje do pliku tekstowego, w zamyśle miał to robić na pulpicie, ale chyba z tego zrezygnuję z ww powodów i niech zapisuje gdzie indziej.
Witam. Proszę masz gotową procedurę zapisującą do pliku, wystarczy że będziesz ją wywoływał w evencie swojego komponentu, w momecie nadejścia danych i tyle. procedure loguj_blad(nazwa_pliku_log,tekst:string)... var zmienna_plikowa:textfile; begin Assignfile(zmienna_plikowa, nazwa_pliku_log); try append(zmienna_plikowa); Writeln(zmienna_plikowa,tekst);...
Version info jest umieszczane w pliku podczas kompilacji i w efekcie masz - prawym klawiszem na pliku (exe oczywiście) - właściwości - zakładka wersja pliku. Jak w opcjach włączysz automatyczną inkrementację wersji to przy każdej kompilacji "build" zwiększy się. W kodzie już nie jest tak łatwo gdyż musisz odwołać się do całej struktury TFileVersionInfo...
program w drugim poście coś napewno pomoże: tam jest pokazane sterowanie jednym z pinów w comie, za pomocą comportu. W następnym poście jest comport do ściągnięcia. Jeśli chodzi o sterowanie RS232, to istotne komendy to: comport1.open; comport1.close; ComPort1.WriteStr('d'); ComPort1.ReadStr(zmienna_string); comport1.write:=(zmienna_integer, 1); comport1.read:=(zmienna_integer,...
Witam mam problemik ComPort.ReadStr(Str, Count); Pom:=Pom+Str; a:=Length(Pom); If a=66 then L:=Pom; LabelA.Caption:='Czas:......'+co... LabelB.Caption:='Namiary A:......'+copy(L,15,14); Jak widzimy w powyszym kodzie planuje nadchodzace dane z RS232 ( Str ) dodac do siebie tak aby powstal...
Dzięki za odpowiedź! Program ma wysyłać z tablicy danych przez port COM animację do oświetlenia oczka wodnego: tj. ramki (klatki) po 60 zmiennych, ktore stanowia kolory (RGB) 20 punktów. Animacja znajduje się w tablicy, animacja ma 100fps (stąd interwał 10ms) Na formie mam podgląd, zrobiony za pomocą obiektów Shape. W procedurze przerwania (każde przerwanie...
Żeby zmienić wartość zmiennej w pliku binarnym musisz znać adres umiejscowienia tej zmiennej. Praktycznie bez metody prób i poszukiwań poznanie położenia jest prawie niewykonalne. Wyjątek: jeśli mówimy o resourcestringu lub jakiejkolwiek danej będącej w obszarze zasobów (a nie kodu), to sprawa jest znacznie prostsza.
Delphi XE2 to pierwsze środowisko wydane przez Embarcadero (dawniej wydawane przez Borland), które pozwala na kompilowanie 64-bitowych aplikacji. Choć samo występuje wyłącznie w trybie 32-bitowym (wszystkie kompilatory Embarcadero są tworzone w... Delphi! Stąd dopiero przyszła wersja prawdopodobnie dostępna będzie w wersji 64-bitowej) i jest jeszcze...
zamieszczam szkielet kodu którym możesz się posiłkować, trudno mi naskrobać w pełni działający taki żebyś tylko wkleił i działał bo nie znam parametrów połączeniowych do bazy... var Query: TQuery; begin Query:=TQuery.Create(nil); Query.Close; Query.DatabaseName:='nazwa bazy'; Query.SQL.Clear; Query.SQL.Add('insert into nazwa_tablicy...
Dodano po 50 Poniższe linijki przypisują wartości do pola, ale po kolei opiszę co i jak: [syntax=delphi] nazwa.Text:=tabButow[StrToInt(naszeButy.... //przypisanie wartości do pola nazwa z tablicy, po wybranym indeksie z pola wyboru naszeButy z tablicy rekordów rozmiar.Text:=tabButow[StrToInt(naszeBut...
Mój problem jest następujący: Napisałem program, w którego oknie przesuwają się dwa kwadraty (obiekty tshape), przesuwają się one w czterech kierunkach (góra, dół, prawo, lewo), kierunek dla każdego z nich wybierany jest losowo, co 1 milisekundę z szansą zachowania poprzedniego kierunku 99%. Procedura losowania kierunku: procedure tform1.klocek1; begin...
Bardzo dziękuje za cenne podpowiedzi. Mam jeszcze kilka pytań: procedure DelayM( interwal_w_milisekundach :integer); var Start:longint; begin Start:= GetTickCount ; repeat Application.ProcessMessages; until ((GetTickCount-Start) >= Longint( interwal_w_milisekundach )); end; 1. W powyższym kodzie zastosowałeś funkcje GetTickCount mam pytanie czy ona...
Domyślam się, że twój program ma mieć charakter obiektowy (a nie działać na zasadzie rysowanego obrazka).To proste (dla mnie zaawansowanego ;) ): 1: Przemieszczanie widoku: Musisz stworzyć nowe zmienne: "PX","PY" , które będą oznaczały pozycję ekranu. Teraz spraw by były zależne od suwaków. Następnie musisz użyć ich (zmiennych px,py) w elementach, które...
Przerwanie dlugiej petli przyciskiem mozna zrobic dajac jakas zmienna globalna np stop typu bool, ktora jest =0, jak masz petle for to pierwsze co ma byc sprawdzane to czy stop=0. Pod przyciskiem stopu dajesz instrukcje stop=1, wtedy zmienna sie zmieni i petla ominie wszystkie instrukcje pozostale bo if bedzie false. A przy jakims przycisku ktory ma...
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer); Masz coś takiego jak Count. Spróbuj w pętli robić ComPort.ReadStr(Str, Count); Memo1.Text := Memo1.Text + Str; Powtarzaj pętlę Count razy. Używałem kiedyś ComPort ale jakoś inaczej to robiłem. Jak to nie zadziała to wieczorem sprawdzę w domu jak to było... Nie zadziała, bo po pierwszym...
Utworzyłem obiekt dodawany do TList: type PIteracja = ^Iteracja; Iteracja = record X, Y, Z : byte; A, B, C : char; end; oraz zmienne których używam do utworzenia listy: var TymczasowaIteracja : Iteracja; IteTmp: PIteracja; ListaIteracji: TList; Tworzę listę i w pętli wczytuję z pliku wartości w niej: ListaIteracji := TList.Create;...
Mam w pliku zapisaną zmienną typu Cardinal. Kwestia, że poszczególne bajty są odwrócone w obszarze całej liczby. Czyli wartość 1 zapisana jest jako 01 00 00 00 Jak najszybciej wczytać poprawnie to do zmiennej? Dotychczas robiłem to tak: [syntax=Delphi] read(f,id1,id2,id3,id4); Result:=((id4 shl 8+id3) shl 8+id2) shl 8+id1;[/syntax] Jednak szukam czegoś...
OK to zrobie tak że będe miał dwa wątki któty jedem będzie główny czyli ten co zlicza od 100 do 0 i kończy się jeśli licznik będzie równy zero i dodam dodatkowy parametr Koniec: Boolean [syntax=delphi]repeat until Licznik=0 and Koniec=TRUE[/syntax] Mam pytanie czy zmienna Koniec muże być zwykłą zmienną czy musi być obiektową jeśli odwołują się dwa różne...
Witam Starałem się wyjaśnić platforma AVR lub zadania jaki ma wykonać NIE JEST TAK WAŻNE jak zorganizowanie komunikacji na RS232 za pomocą paczek HEX! Mogę wykorzystać dowolną większą kość AT! AT90s2313 Akurat tą kość mam gotową do pracy i kompletną do komunikacji na RS232. Czy jest możliwe zorganizowanie takiej komunikacji.? Potem wykona zadania......
Mam taki oto problem z odejmowaniem czasów format lub dokładność Godzina:minuta bez sekund i milisekund. Problem dotyczy bardziej rozbudowanego zadania uproszczę to tylko to interesującej mnie kwestii z owymi godzinami. Mam np godzinę 02:45 potrzebuję teraz od tej godziny odjąć 20 minut otrzymamy wtedy 02:25 potem powtarzam odjecie mam 02:05. W kodzie...
Witam. Mam napisany program do komunikacji w Delphi i chciałem go skompilować w Lazarus(ie). Niestety po uruchomieniu programu nie działa prawidłowo komunikacja. Okazało się, że struktura (record) ma rożne wielkości (sprawdzając komendą sizeof) w Delphi i Lazarusie. Szukałem przyczyny i problem pojawia się gdy w strukturze record są zmienne typu Double....
Można to zrobić na kilka sposobów, albo skorzytać z innych funkcji dostępu do plików które urzywają uchwytów, np CreateFile, ReadFile, albo skorzystać z typu Text (nie jestem pewien czy się da), albo zrobić zmienne typu TextFile jako globalne, nadać im numery i wybierać przy pomocy CASE po numerze podanym przy wywoływaniu procedury. PS (z ostatniej...
Witam Mam taki problem: Chciałem zrobić tak, żeby po kliknięciu np. na button uruchomił mi się explorator windows z otwartym katalogiem (banał). Problem jest tego typu, że ścieżkę dostępu do katalogu mam w zmiennej String. Po wpisaniu: WinExec ('explorer.exe /select, katalog/podkatalog', SW_ShowNormal); wszystko jest wporządku. Gorzej jeżeli...
zmienna_logiczna:=pos(ciag_znakow,zmienn...
najprosciem zrobic to tak: wczytaj bitmape do image, nastepnie za pomoca funkcji image.canvas.pixel[x,y]:=Tcolor; gdzie x,y to wspolrzedne pixela, a TColor to kolor w postaci HEX $RRGGBB. Pewnie nastepne pytanie bedzie brzmialo jak zapisac wartosc z ineger'a do tej zmiennej TColor. Rozwiazac to mozna nawiele sposobow, mozesz np tak: (Kazdy kolor jest...
Witam Pewnie kompilator pluje się że nie zostały one zadeklarowane. Aby temu zaradzić linia kodu zamiast np. label1.caption:='Coś'; powinna wyglądać tak: form1.label1.caption:='Coś'; Powinno to pomóc. PS. form1 to nazwa formatki na której umieszczony jest dany komponent. W procedurach/funkcjach których nagłówki są zadeklarowane w klasie formatki, zmienne/komponenty...
Witam. Chyba prościej byłoby zrobić coś takiego w oparciu o pliki INI. Podam ci przykład: Zrób nową formę, wrzuć na nią TIMER z dokładnością co do sekundy i w sekcji uses dodaj wpis: INIFiles . Dodaj zmienną globalną do projektu: INI: TIniFile; Dodaj zdarzenie OnFormCreate i w tej procedurze zostanie załadowany plik INI. Stwórz procedurę OnClose , w...
Nie rozumiem o co Ci chodzi w tej procedurze. Jak ma to działać jeśli ładujesz do Timer'a wartość ze zmiennej "a" a następnie nadpisujesz ją wartością ze zmiennej "b". Tym sposobem Timer1.Interval zawsze będzie załadowany wartością ze zmiennej "b". Napisz co chcesz osiągnąć - będzie szybciej. Pozdrawiam...
Na jakiej wersji Delphi pracujesz? bo całe rozdzielanie jest tutaj dość czasochłonne a można by uprościć. Ponadto nie bardzo mi się podoba mieszanie funckcji pracujacych na null-terminated string ze stringami. Druga rzecz - bezpieczniej jest używać przy konwersji separatora dziesiętnego systemowej zmiennej globalnej DecimalSeparator . Ponadto zamiast...
Dzięki, to mi chyba trochę rozjaśniło. W wątku OnRxChar powinienem chyba ustawiać flagę po odebraniu danych i przypisaniu ich do zmiennej pomocniczej. Ponieważ różne przychodzące dane winny być przypisane do wielu różnych zmiennych, opracowanie danych odbędzie się po "wyjęciu" ich zmienną pomocniczą z wątku OnRxChar. Obsługa guzika może mieć pusta pętlę...
Nie mam katalogu Debug... Stworzyłem go samemu i wrzuciłem tam bibliotekę nadal zgłaszany jest ten sam błąd 127 :( Podejrzewam, że błąd tkwi w zmiennej systemowej Path, jednak nie jestem pewny. Na komputerze posiadam kilka kompilatorów. Pamiętam, że jeden z kompilatorów się buntował, gdy jego ścieżka nie znajdowała się na samym początku zmiennej Path....
Witam . Problem mam taki . potrzebuje uruchomić inny plik exe uzywając funkcji ShellExecute. niestety nie odnajduje tego pliku . Dostaje info o tym ze nie moze odnaleśc pliku w folderze ( i tu jest ciekawostka) w którym mam zapisaną moją aplikacje , choć plik.exe który chce uruchomic jest całkiem gdzie indziej . dzieje sie tak tylko wtedy kiedy chce...
Delphi funkcja Zaokr Mam problem z wykorzystaniem funkcji Zaokr przy wyliczaniu zmiennych : i;z Funkcja ma zaokrąglać wyliczenia do 2 miejsc po przecinku na zasadzie (1 do 4) to 0 ; (5 do 9) to 1 W jaki sposób deklarować tę funkcje aby była dostępna do wyliczeń zmiennych : i;z oto kod: unit Unit1; interface uses Windows, Messages, SysUtils, Classes,...
Witam Mam arduino + ethernet sheld + tft toutchscreen scheld. Arduino robi za clienta. Komunikuje się z napisanym w delphi hostem. Wysłyła ramki i odbiera/ przykładowa ramka wysyłana: !A(at)ARDUINO CLIENT#192.168.0.100$ przykładowa ramka odbierana: !A(at)AUTORYZACJA OK#IP$11223141% Ogólnie potrzebuję algorytm rozebrania tej ramki na czesci w c. Mam...
Dzięki. Pomyślę o tym. Co do sprawdzania i wyszukania przecinka jest sprawa jest u mnie o tyle prosta, że cały string jest składany z pojedyńczych znaków na zasadzie text:=text+char; Więc nie będę się skupiał na zmiennej Text (z całą wiadomością) tylko na zmiennej Char, z pojedyńczymi znakami. Będę sprawdzał pod kątem przecinka, i jak się pojawi...
Błąd mi się wydaje dość prosty: Instrukcja CASE!? Jej się używa do danych liczbowych integer, ewentualnie pojedynczych znaków w zmiennej typu Char, ale nie WideChar. Nie możesz piszać w case : ' + ': ' - ': ' * ': ' / ': itd nie może być ' + ' - może być co najwyżej '+' - w sensie bez tych spacji - pojedynczy znak. Zmienna WideChar oraz...
Witam, na wstępie chciałbym zaznaczyć, iż podobne tematy będące już w sieci nie udzielają odpowiedzi na moje pytanie. Mianowicie: jak zapisać dość złożony obiekt (zawierający w sobie tablice pól wskazujące na inne klasy, które posiadają podklasy z nich dziedziczące) do pliku? Używając strumieni udaje mi się zapisać jedynie pojedyncze pola wskazując...
Nie da się tak (choć oczywiście każda klasa zachowuje swoją zmienną), ale można prosto obejść. Zamiast pola zastosuj własność (Property) i wówczas inherited już zadziała (ale bez kropki!). Podobnie jak zastosowanie w procedurze zmiennych lokalnych powoduje przykrycie i uniemożliwienie dostępu do zmiennych globalnych. Swoją drogą - świetny przykład na...
Posiedziałem dłuższą chwilę nad kodem i w debuggerze. Opcja Lock/unlock jest mi oczywiście znana i wykorzystywana. Nie rozumiem jednej rzeczy. Wywoływane przez wątek rysowanie komponentów czasem "gubi" niektóre wystąpienia. Mam procedurę tej treści: Dodano po 39 OK, odkryłem. Synchronize jest odpowiedzią. Rysowanie było wywoływane przez procedurę, która...
Wyjątek AccessViolation jest generowany w przypadku, gdy Delphi próbuje się odwołać do do zmiennej która nie istnieje lub do zmiennej, której nie jest przyznany adres w pamięci. W Twoim przypadku, bez znajomości całego kodu, ciężko ustalić dokładnie gdzie błąd jest generowany. Natomiast podejrzewam, że odwołujesz się do komórki TStringDrid-a, która...
w:=w+1; end; wynik:=suma/w; Zmienna w jest ogólnie niepotrzebna. Możesz podzielić przez zmienną ilosc. Będzie też czytelnie. Jak działa to ok, piwo można otwierać ;-)
Witam, potrzebuję napisać program, który wypisze wszystkie możliwe kombinacje elementów tablicy dla określonej ich liczby, łącznie z powtórzeniami, czyli: Dla tablicy a, b, c, d, e mają być kombinacje 2 znakowe aa ab ac ad ae ba bb itd. Znalazłem kod w C++, który znakomicie spełnia swoje zadanie (kod poniżej). Jednak potrzebuję mieć ten program napisany...
musisz mu wskazać co drukować, podałeś wymiary, nie podałeś wymiary czego zdefiniuj zmienną funkcją VAR na poczatek np var xD : TBitmap; // zmienna XD zostaje zdefiniowana jako element wbudowanej biblioteki FCL czyli TBitmap pozwala odczytywać i zapisywać grafikę rastrową begin xD := TBitmap.Create; // odwołanie do biblioteki aby utworzył obiekt,...
Diwne, że w ogóle załadowało Ci jpg do TImage. Jeśli chcesz 'porządnie' obsługiwać jpg, powinieneś dodać do sekcji uses słowo JPEG. W programiku deklarujesz zmienną np. x typu TJPEGImage i tworzysz ją (x:=TJPEGImage.Create). Do tej zmiennej można ładować pliki jpg. I na koniec wyświatlasz obrazek : Image1.Picture.Assign(X) Trochę to pokręcone, ale modół...
Mam taki problem: W obiekcie StringGrid przedstawiam pewne dane.Ale potrzebna mi osobna procedura do wypełnienia tego komponentu samymi zerami.No i tu zaczeły się schody.Po zadeklarowaniu takiej procedury w klasyczny sposób program przy próbie kompilacji zgłasza błąd - niezadeklarowana zmienna wskazując na obiekt StringGrid.Jeśli ten obiekt zadeklaruję...
Okij, wyciągnąłem funkcje sterujące FT ze swojego programiku. Ponieważ pisalem go dawno temu, trochę zapomiałem niektore szczegóły, ale powinno to dzialac. W każdym bądź razie u mnie działało. No to po koleii : Na początek wykrywanie podłączonych urządzeń : FT_ListDevices((at)ile,nil,FT_LIST_NUMBE... gdzie ile jest typu word. I jeśli znajdzie jakiś...
Już dawno nie bawiłem się w Delphi ale jak dobrze pamietam używa sie tam Pascala. 1. Więc jeśli się nie myle pliki powinno otwierać cię tak jak w Pascalu. var pliki:array[1..16] of string; i:integer; p:text; liczba:integer; begin {tu sie powinno znaleść wypełnienie tablicy ścierzkami dostępu} for i:=1 to 16 do begin...
co do statusbara to będzie tak: dodajesz sobie "panele" w statusbarze i piszesz takie coś: form1.StatusBar1.Panels[tutaj nr panela liczony od zera].text:=zmienna typu string; rozbicie daty i godziny na kolejne "stringi" jest pięknie opisane w helpie, służy do tego funkcja "datetostr" i "timetostr" co do tray'a to najlepiej jest zastosować jakiś komponent...
no jeśli to jest tylko tyle kodu to sie nie dziwie że sie nic nie robi... tam masz coś takiego: const GG_RECV_MSG=0x000a; jeśeli ja dobrze pojmuje to jest numer komunikatu windowsa (albo WM_USER + GG_RECV_MSG) jaki musi obsłużyć forma, żeby zmieniać te wartości w zmiennej "zmienna". Więc musisz się podpiąć do funkcji okienkowej formy (kłania się WinApi)....
Jaca: Funkcja działa pięknie. Miałem z nią jednak pewne problemy. Jak chciałem dodać na koniec zwróconego stringa jakiś ciąg znaków to nie udawało się to. Dla tych co zechcą wykorzystać tę funkcje w swoich programach powiem że zwracany ciąg mieści się na całej pojemności zmiennej string. Aby coś dokleić na koniec trzeba najpierw wyciąć samą ścieżkę...
Elektryk nie chodzi mi o konwersję pliku *.hex tylko o zkonwertowanie bajtu zapisanego jako zmienna string na zmienną integer oraz na string reprezentujący ten bajt w zerach i jedynkach (taki przelicznik). No nie wiem może ja się niejasno wyrażam tylko ja tak to widzę (może dlatego nie mogłem znaleźć sam odpowiedzi). Sam Sung też fajowski algorytm....
Witam, czy można w Delphi w pętli repeat ..until ( lub innej ) czekać na zmianę zmiennej ustawianej w przerwaniu np. od Timera ?? Tutaj jest przerwanie zegara systemowego: procedure TfrmMain.Timer_AckWaitTimer(Sender... TObject); begin AckTimeOut := true; Timer_AckWait.Enabled := false; end; a tu jest kod który powoduje zawieszenie...
Portu com nauczylem sie sterować z ksiązki RS232C Andrzeja Daniluk-a (Helion) Jednak to za mało nie mam tam wszystkiego jest tylko jak odbierać znaki liter, znaki sterujace i tu mam zonka. Otóż Mikrokontroler odczytuje bajty z zew pamieci i wysyła je przez rs232 do komputera i tu mam problem, gdyz wysyłanie jest bardzo szybkie i wysyła wszystkie mozliwe...
Ten kawałek kodu dostałem od innego pomocnego uzytkownika.Nie wiem w jaki sposob ja uruchomić i co za zadanie mają jej parametry a w szczególności istatni Bits typu Pointer. Wogóle jak te parametry wyciągnąć z dowolnego pliku BMP. Prosze pomóżcie mi. Chodzi mi również o konkretny przykład np. LoadBMP (sciezka, .....i tu nie wiem jak dalej i z czego...