Perykles Posted November 18, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
Toster Posted November 18, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
Perykles Posted November 18, 2009 Author Report Share Posted November 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 to comment Share on other sites More sharing options...
Adam27 Posted November 18, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
KaYou Posted November 18, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
xevil21 Posted November 18, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
Perykles Posted November 18, 2009 Author Report Share Posted November 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 to comment Share on other sites More sharing options...
xevil21 Posted November 19, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
Perykles Posted November 19, 2009 Author Report Share Posted November 19, 2009 Dzięki, zapomniałem że nie może być spacji. Link to comment Share on other sites More sharing options...
xevil21 Posted November 19, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
Jason Posted November 21, 2009 Report Share Posted November 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 to comment Share on other sites More sharing options...
Perykles Posted November 25, 2009 Author Report Share Posted November 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 to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.