Hallo zusammen,
ich wollt mal ein kleines Programm schreiben, was immer einen Tabulator macht, wenn man Enter drückt. Das habe ich jetzt so gemacht:
Das funktioniert zwar, aber erstens weiß ich nicht, ob das mit dem String einfügen noch eleganter geht und zweitens springt der Cursor immer kurzzeitig hoch, bevor er dann an die richtige Stelle geht und damit auch die ganze scrollbar, aber runter springt sie nicht mehr...
ich wollt mal ein kleines Programm schreiben, was immer einen Tabulator macht, wenn man Enter drückt. Das habe ich jetzt so gemacht:
Java:
public static String enter(String in, int position)
{
String out = in.substring(0,position) + "\t" + in.substring(position, in.length());
return out;
}
public static void main(String[] args)
{
//...
final StyledText text = new StyledText(shell, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL)
Listener mlistener = new Listener()
{
public void handleEvent(Event evt)
{
switch (evt.keyCode)
{
case 13 : int co = text.getCaretOffset();
text.setText(enter(text.getText(),co));
text.setCaretOffset(co+3);
break;
}
}
};
text.addListener(SWT.KeyDown,mlistener);
}
Zuletzt bearbeitet: