B) Java SE
Установка скролинга.
ta.setLinesToScroll(3); // прокручивать 3 строки
4)Обработка оклика нажатия клавиш клавиатуры
a) Visual C++
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e)
{
int k;
richTextBox1->Text="12345\nqwerty";
}
private: System::Void richTextBox1_KeyUp(System::Object^ sender, System::Windows::Forms::KeyEventArgs^ e)
{
int k;
if(e->KeyCode == Keys::F2) // N клавиши
//if(e->KeyValue=='1') // код символа
{
k=1; // при нажатии F2
k=richTextBox1->SelectionStart; // положение каретки
}
else
{
k=2;
}
}
Для прослушивания событий от клавиатуры создается класс,
производный от JTextPane.
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextPane;
public class lab13
{
JFrame form;
JScrollPane js;
// JTextPane je;
Myrich je; // производный класс
lab13()
{
form = new JFrame();
form.setBounds (0,0,700,500);
form.setTitle ("лабораторная 13");
form.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
form.setLayout(null);
js=new JScrollPane();
js.setBounds(20, 20, 300, 300);
form.add(js);
je = new Myrich();
js.getViewport().add(je);
form.getContentPane().add(js);
je.setEditable(true);
je.setText("12345");
form. show ();
String s;
s="";
}
public static void main (String args[])
{
lab13 f;
f= new lab13();
}
class Myrich extends JTextPane
implements KeyListener
{
String s;
Myrich()
{
addKeyListener(this);
s="";
}
public void keyPressed(KeyEvent ke)
{
}
public void keyReleased(KeyEvent ke)
{
int k;
k=ke.getKeyCode(); // код клавиши
// if(k==KeyEvent.VK_F1)
}
public void keyTyped(KeyEvent ke) // вводсимволаke
{
int k;
s=s+ke.getKeyChar(); // введенный символ
k=je.getCaretPosition(); // положение текстового курсора (каретки)
}
}
}
import com.sun.lwuit.Display;
import com.sun.lwuit.Form;
import com.sun.lwuit.TextArea;
import com.sun.lwuit.geom.Dimension;
import com.sun.lwuit.layouts.CoordinateLayout;
import javax.microedition.midlet.*;
public class lab13 extends MIDlet
{
Form form;
Myrich ta;
public void startApp()
{
int w,h;
Dimension d=new Dimension(200,200);
Display.init(this);
form = new Form();
form.setPreferredSize(d);
form.setTitle("Лабораторная работа 13");
w=form.getWidth();
h=form.getHeight();
CoordinateLayout ee = new CoordinateLayout(w,h);
form.setLayout(ee);
ta=new Myrich();
ta.setX(10);
ta.setY(40);
ta.setEditable(true);
form.addComponent(ta);
form.show();
ta.setText("12345");
ta.setFocus(true);
form.show();
}
public void pauseApp()
{
}
public void destroyApp(boolean unconditional)
{
}
class Myrich extends TextArea
{
int key; // код символа
String s; // строка вывода
Myrich()
{
key=0;
s="";
}
public void keyReleased (int keyCode)
{
key = keyCode;
s=s+(char)key;
}
}
}