Perykles Napisano Listopad 18, 2009 Zgłoś Share Napisano Listopad 18, 2009 Witam, szukałem w google jakiegoś opisu jak w pascalu myszke obslugiwac, ale nic nie moglem znalezc. Znalazlem kilka stron, niby pisze ze to obsluga myszki w pascalu, ale kod jest napisany w jakims assemblerze. Czytalem tez ze mozna zrobic wlasny modul do myszki, ale nie moge nigdzie znalezc, jakie są procedury obslugi myszki. Pomozecie? Link do komentarza Udostępnij na innych stronach More sharing options...
Toster Napisano Listopad 18, 2009 Zgłoś Share Napisano Listopad 18, 2009 z tego co wiem paskal nie wspieral myszki natywnie. byly chba bilioteki turbovision ale ogolnie uzywalo sie przerwania z biosu aby recznie obsluzyc eventy myszy Always Dark<br /> Link do komentarza Udostępnij na innych stronach More sharing options...
Perykles Napisano Listopad 18, 2009 Autor Zgłoś Share Napisano Listopad 18, 2009 To w którym programie najlepiej myszkę obsługiwać? A tak z ciekawości, którego języka programowania najlepiej się nauczyć? Pascala się dość łatwo uczy, ale trzeba przyznać, że już pascal jest trochę przestarzały. Link do komentarza Udostępnij na innych stronach More sharing options...
Adam27 Napisano Listopad 18, 2009 Zgłoś Share Napisano Listopad 18, 2009 Ja odpowiem na Twoje drugie pytanie: polecam Delphi, sam w tym języku programuję i wydaje mi się on prosty. Składnia prawie ta sama co w Pascalu, możesz jednak wizualnie tworzyć swój program, dodawać komponenty oraz w bardzo łatwy sposób obsłużyć myszkę, jeśli tego potrzebujesz Etharnion - 2D RPG Szukam grafika chętnego do współpracy przy projekcie. Link do komentarza Udostępnij na innych stronach More sharing options...
KaYou Napisano Listopad 18, 2009 Zgłoś Share Napisano Listopad 18, 2009 Obslugujac myszke w pascalu dawno dawno temu dawalem wsatwki z asma. Lecz nie polecam jezeli jestes poczatkujacy "(2b || !(2b)) == question" W. Shakespeare http://jakubniwa.pl - świat sztucznej inteligencji Link do komentarza Udostępnij na innych stronach More sharing options...
xevil21 Napisano Listopad 18, 2009 Zgłoś Share Napisano Listopad 18, 2009 haha wstawki z asma to podstawa też kiedyś się tego uczyłem procedure g_pobierz_status_myszy(var lewy, srodkowy, prawy : boolean; var poz_x, poz_y : word); var temp : word; temp_poz_x, temp_poz_y : word; begin asm mov ax, 0003h {laduj 00003h do AX} int 33h {wywolaj przerwanie 33h} mov word ptr temp, bx {laduj BX do temp} mov word ptr temp_poz_x, cx {laduj CX do temp_poz_x} mov word ptr temp_poz_y, dx {laduj DX do temp_poz_y} end; poz_x := temp_poz_x; poz_y := temp_poz_y; if ( (temp and $01) <> 0 ) then lewy := TRUE else lewy := FALSE; if ( (temp and $02) <> 0 ) then prawy := TRUE else prawy := FALSE; if ( (temp and $04) <> 0 ) then srodkowy := TRUE else srodkowy := FALSE; end; tak kiedyś obsługiwałem myszkę w prostych programach Pozdrawiam! ps oczywiście pisane na podstawie mądrych książek Link do komentarza Udostępnij na innych stronach More sharing options...
Perykles Napisano Listopad 18, 2009 Autor Zgłoś Share Napisano Listopad 18, 2009 Dzięki. Mam jeszcze jedno pytanko, zrobiłem taki moduł do myszki, żeby było prościej, tylko że wywala mi 3 błędy jak kompiluje. W asemblerze się jeszcze nie orientuje za bardzo, to kopiowałem procedury z http://computersun.pl/pascal/porady/obsluga-myszki-p_54.html żeby zobaczyć co z tego wyjdzie Ciężko się w tym połapać. Co tutaj zrobiłem źle? Unit ModulObslugiMyszki; Interface Uses CRT; Procedure PokazMyche Procedure SchowajMyche Procedure SprawdzMyche(x,y,ButtonStatus:word); Procedure DefHorPlace(min,max:integer); Procedure DefVerPlace(min,max:integer); Procedure SprawdzPozycje(x1,y1,x2,y2:integer); Procedure WrazliwoscMychy(hor,ver:integer); Procedure SprawdzWrazliwoscMychy(var,hor,ver:integer); Procedure UmiescMyche(x,y:integer); Implementation {przerwanie wstawka asemblera w Turbo Pascalu - pokaż myszkę/ pokazywanie wskaźnika myszki} Procedure PokazMyche: Assembler; Asm mov ax, 0001h int 33h End; {przerwanie wstawka asemblera w Turbo Pascalu - schowaj myszkę/ chowanie wskaźnika myszki} Procedure SchowajMyche: Assembler; Asm mov ax, 0002h int 33h End; {przerwanie wstawka asemblera w Turbo Pascalu - sprawdzanie myszki/ wykrywanie przycisku myszki} Procedure SprawdzMyche(Var X, Y, ButtonStatus :Integer); Var Temp1, Temp2, Temp3 :Word; Begin Asm mov ax, 0003h int 33h mov Temp1, bx mov Temp2, cx mov Temp3, dx End; ButtonStatus:=Temp1; X := Temp2; Y := Temp3; End; Procedure DefineHorPlace(Min, Max :Integer): Assembler; Asm mov ax, 0007h mov cx, Min mov dx, Max int 33h End; Procedure DefVerPlace(Min, Max :Integer): Assembler; Asm mov ax, 0008h mov cx, Min mov dx, Max int 33h; End; {przerwanie wstawka asemblera w Turbo Pascalu - sprawdź pozycję myszki/ sprawdzanie myszki} Function SprawdzPozycje(X1, Y1, X2, Y2 :Integer):Boolean; Var MouseStatus, PosX, PosY :Integer; Begin GetStatus(PosX,PosY,MouseStatus); If (PosX >= X1) And (PosX <= X2) And (PosY >= Y1) And (PosY <= Y2) Then MouseIn := True Else MouseIn := False; End; {przerwanie wstawka asemblera w Turbo Pascalu - ustawianie wrażliwości myszki} Procedure WrazliwoscMychy(Hor, Ver :Integer); Assembler; Asm mov ax, 001Ah mov bx, Hor mov cx, Ver mov dx, 0 int 33h End; {przerwanie wstawka asemblera w Turbo Pascalu - sprawdź wrażliwość myszki/ sprawdzanie wrażliwości myszki} Procedure SprawdzWrazliwoscMychy(Var Hor, Ver :Integer); Var Temp1, Temp2 :Word; Begin Asm mov ax, 001Bh int 33h mov Temp1, bx mov Temp2, cx End; Hor := Temp1; Ver := Temp2; End; {przerwanie wstawka asemblera w Turbo Pascalu - przesuniecie myszki do punktu/ umieszczanie myszki w punkcie} Procedure UmiescMyche(X, Y :Integer); Assembler; Asm mov ax, 0004h mov cx, x mov dx, y int 33h End; End. Link do komentarza Udostępnij na innych stronach More sharing options...
xevil21 Napisano Listopad 19, 2009 Zgłoś Share Napisano Listopad 19, 2009 Unit Modul Obslugi Myszki; to już jest błędna nazwa, zmień np: Unit ModulObslugiMyszki; nie mam pascala, aby więcej sprawdzać Pozdrawiam! Link do komentarza Udostępnij na innych stronach More sharing options...
Perykles Napisano Listopad 19, 2009 Autor Zgłoś Share Napisano Listopad 19, 2009 Dzięki, zapomniałem że nie może być spacji. Link do komentarza Udostępnij na innych stronach More sharing options...
xevil21 Napisano Listopad 19, 2009 Zgłoś Share Napisano Listopad 19, 2009 Dzięki, zapomniałem że nie może być spacji. a to chyba tak powinno być: Dzięki! Zapomniałem, że nie może być spacji. Link do komentarza Udostępnij na innych stronach More sharing options...
Jason Napisano Listopad 21, 2009 Zgłoś Share Napisano Listopad 21, 2009 To w którym programie najlepiej myszkę obsługiwać? A tak z ciekawości, którego języka programowania najlepiej się nauczyć? Pascala się dość łatwo uczy, ale trzeba przyznać, że już pascal jest trochę przestarzały. To drugie pytanie to takie trochę flame'owe (chyba, że temat widzą sami ludzie preferujący Delphi, to wtedy jest OK i Cię mają ). Jeśli zamierzasz być programistą to ucz się kilku języków (oczywiście nie jednocześnie). Jest dużo języków podobnych do C/C++ (np. PHP, Java), więc nauka C++ jest pod tym względem opłacalna. Teraz do pisania stron internetowych nawet trzeba znać różne języki (np. PHP, JavaScript, CSS, XHTML, SQL - te trzy ostatnie to raczej nie służą bezpośrednio do programowania: dlatego się mówi, że stworzyłem stronę, a nie zaprogramowałem stronę ). Więc jak widzisz, nie możesz postawić na jeden język i się go uczyć, i tak na studiach (bo skoro się uczysz programować to chyba jeszcze nie studiujesz ) będziesz zmuszony się nauczyć przynajmniej części z tego co wymieniłem. - mam nadzieję, że to nie zniechęci Cię do nauki Link do komentarza Udostępnij na innych stronach More sharing options...
Perykles Napisano Listopad 25, 2009 Autor Zgłoś Share Napisano Listopad 25, 2009 Jeszcze nie studiuje, w szkole na TI wkuwamy pascala cały czas, a że właśnie zamierzam być programistą, to nie chcę przez dwa lata tylko pascala klepać w liceum Bo do studiów się zanudzę Na razie zdecydowałem się na naukę c++, jest trochę skomplikowany ale i tak mnie to wciągnęło Potem albo delphi albo języki do pisania stron internetowych. Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.