Die Japilib bietet 14 verschiedene Cursortypen. Mit der Funktion
j_setcursor(component, type);
kann an eine Komponente ein bestimmter Cursortyp gebunden werden. Es ist allerdings zu beachten, daß auf den unterschiedlichen Plattformen die Cursor auch verschiedenes Aussehen besitzen. Die folgende Abbildung zeigt die vorhandenen Cursortypen mit dem jeweiligen JAPI Namen:
Der Afolgende Auszug aus einer Eventloop zeigtein Demoprogramm zum Anzeigen der vorhandenen Cursortypen. Es ist für jeden Cursor ein Menüeintrag vorhanden, der in der Eventloop abgefragt wird. Entsprechend der Auswahl wird dann für den Frame der Cursor gesetzt:
while((obj!=quit) && (obj != frame)) { obj=j_nextaction(); if(obj==def) j_setcursor(frame,J_DEFAULT_CURSOR); if(obj==cross) j_setcursor(frame,J_CROSSHAIR_CURSOR); if(obj==hand) j_setcursor(frame,J_HAND_CURSOR); if(obj==move) j_setcursor(frame,J_MOVE_CURSOR); if(obj==text) j_setcursor(frame,J_TEXT_CURSOR); if(obj==wait) j_setcursor(frame,J_WAIT_CURSOR); if(obj==nr) j_setcursor(frame,J_N_RESIZE_CURSOR); if(obj==ner) j_setcursor(frame,J_NE_RESIZE_CURSOR); if(obj==er) j_setcursor(frame,J_E_RESIZE_CURSOR); if(obj==ser) j_setcursor(frame,J_SE_RESIZE_CURSOR); if(obj==sr) j_setcursor(frame,J_S_RESIZE_CURSOR); if(obj==swr) j_setcursor(frame,J_SW_RESIZE_CURSOR); if(obj==wr) j_setcursor(frame,J_W_RESIZE_CURSOR); if(obj==nwr) j_setcursor(frame,J_NW_RESIZE_CURSOR); }
Abbildung 5.6 zeigt diese kleine Applikation.