home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: InfoMgt / InfoMgt.zip / kim21.zip / NEW21A1.KIM < prev    next >
Text File  |  1995-10-25  |  3KB  |  156 lines

  1.   
  2.  
  3.   rem Demonstration einiger neuer Features in der Version 2.1a
  4.   rem
  5.   rem 1. rechte Maustaste mit Popup-Menü
  6.   rem 2. X-Y Koordinaten der Maus
  7.   rem 3. Multitasking unter KIM
  8.   rem 4. Ermittlung der Bildschirmauflösung
  9.   rem 5. Verschlüsseln von Daten
  10.  
  11.  
  12.  
  13.   DEFFLOAT _i
  14.   deffloat dx,dy,x,y,taste
  15.   defstring obj$,alt$
  16.   
  17.   dim _felder,1,10
  18.   
  19.   CALL fenster()
  20.   WIN_PAINT "window"
  21.   
  22.  
  23.   rem Ermittlung der Bildschirmauflösung
  24.  
  25.   get_display dx,dy
  26.  
  27.   rem Neu !
  28.   rem Zahlenvariablen werden bei Stringaddition in Strings umgewandelt !
  29.   
  30.   _felder1=dx + " x " + dy
  31.   set_item "inp1",_felder1
  32.  
  33.  
  34.   WHILE _i<>1000
  35.     WIN_EV _i,1
  36.  
  37.     get_item_pos obj$,taste,alt$
  38.  
  39.     rem Darstellen der Mausposition
  40.  
  41.     rem get_mouse_pos x,y
  42.  
  43.     rem Zahlenvariable können übergeben werden !
  44.  
  45.     rem   set_item "inp2",x
  46.     rem   set_item "inp3",y
  47.  
  48.     rem Multitasking nur aus der allg. Event-Schleife, da nur
  49.     rem eine Userfunction gleichzeitig aufgerufen werden kann.
  50.     rem Also Multitask nie in Userfunctions
  51.  
  52.     if obj$="p3" then
  53.       call multi()
  54.     endif
  55.  
  56.     
  57.   WEND
  58.   event_on_item "window","end"
  59.   END
  60.   
  61.   REM  Definition des Fensters
  62.   MODUL fenster()
  63.     
  64.     def_window_st "window",1,1,65,15,"Testfenster"
  65.     
  66.     
  67.     def_statusbar "status",2
  68.     
  69.     
  70.     DEF_PROMPT "aus1", 1, 0, "Pixelauflösung "
  71.     DEF_PROMPT "aus2", 1, 1, "X - Mauskoord. "
  72.     DEF_PROMPT "aus3", 1, 2, "Y - Mauskoord. "
  73.     DEF_PROMPT "aus4", 2, 4, "Text "
  74.     DEF_PROMPT "aus5", 2, 6, "Multitasking"
  75.     
  76.     DEF_STRING "inp1", 18, 0, 15, _felder1; "border"
  77.     DEF_STRING "inp2", 18, 1, 15, _felder2; "border"
  78.     DEF_STRING "inp3", 18, 2, 15, _felder3; "border"
  79.     DEF_STRING "inp4", 2, 5, 45, "Hallo Leute !!!"; "border","right"
  80.     DEF_STRING "inp5", 2, 7, 45, _felder5; "border"
  81.  
  82.     DEF_BUTTON "bu1",2,9,30,"","Verschlüsseln / Entschlüsseln"
  83.     
  84.     ADD_ITEM_ARRAY "window", "aus",1,5
  85.     ADD_ITEM_ARRAY "window", "inp",1,5
  86.     
  87.     DEF_PROMPT "aus_status", 1, 0, " Drücken Sie die rechte Maustaste für ein Popup-Menü ! ";"color on"
  88.     def_palette 1,0,7
  89.     color_item "aus_status",1
  90.     add_item "status","aus_status"
  91.     add_item "window","status","bu1"
  92.     
  93.   ENDMOD
  94.   
  95.   rem Eventfunktion wird aufgerufen wenn BUTTON gedrückt
  96.  
  97.   modul bu1_select()
  98.     defstring text
  99.     get_item "inp4",text
  100.     crypt "1234567",text
  101.     set_item "inp4",text
  102.   endmod
  103.   
  104.   
  105.   MODUL p1_select()
  106.     DEFFLOAT flag
  107.     MSGBOX "Programm beenden ?", 1, flag, " "
  108.     IF flag=1 THEN
  109.       event_on_item "window","end"
  110.       end
  111.     ENDIF
  112.   ENDMOD
  113.   
  114.   MODUL p2_select()
  115.     beep
  116.   ENDMOD
  117.  
  118.  
  119.   rem Multitasking-Routine !
  120.   rem 1.Darf nicht in einer Userfunction aufgerufen werden.
  121.   rem 2.Nach Aufruf,funktionieren nur noch Userfunction-Aufrufe
  122.   rem 3.Andere OS/2-Programme können aufgerufen werden.
  123.   rem 4. WIN_EV muss eingebaut sein.
  124.  
  125.   MODUL multi()
  126.     deffloat x
  127.     for x=1 to 100000000
  128.       win_ev _i,1
  129.       set_item "inp5",x
  130.     next
  131.  
  132.   ENDMOD
  133.  
  134.   
  135.  
  136.   modul mouse_right()
  137.     
  138.     deffloat x,y,dx,dy
  139.     
  140.     get_mouse_pos x,y
  141.     set_item "inp2",x
  142.     set_item "inp3",y
  143.     
  144.  
  145.     rem "Pixel" eine neue Eigenschaft !!!
  146.     
  147.     def_popup_menu "pop",x,y;"pixel"
  148.     
  149.     def_popup_item "p1"," Programm beenden"
  150.     def_popup_item "p2"," Beep "
  151.     def_popup_item "p3"," Multitasking"
  152.     add_item "pop","p1","p2","p3"
  153.     win_paint "pop"
  154.     
  155.   endmod
  156.