Frage

Angenommen, ich bin der Bearbeitung folgenden Text (\ t für Tabs ist, ist es nicht Text) '\ T \ t \ Tsome Text ...' und meine Eingabetastatur Position befindet sich direkt vor dem ‚S‘ (es gibt keine markierten Text) und ich möchte viele Tabs erhalten, bevor ‚S‘ (in diesem Fall ist es 3)

So wie die Zahl von Tabs erhalten mit Win32-API?

P. S. Vielleicht einige Funktion ganze aktuelle Zeile zu erhalten (und dann analysieren, dass Text)?

edit: Deshalb möchte ich mein Programm (das ist im Hintergrund laufen und nicht über eine GUI) Anzahl der Registerkarten in einem beliebigen Texteditor von aktuellen aktiven Linie zu bestimmen, die derzeit aktiv ist (die ich bin der Bearbeitung in).

War es hilfreich?

Lösung

Für einige Anwendungen wie das Standard-Windows-Editor, kann es möglich sein, diese von einer anderen Anwendung zu tun. Notepad selbst ist wenig mehr als ein großer Win32 „Bearbeiten“ Kontrolle in einem resizeable Fenster, so dass die all reguläre Steuer Win32 bearbeiten Nachrichten verwendet werden können, den eigentlichen Text und die Position der Einfügemarke und so weiter zu erhalten.

jedoch im allgemeinen Fall von jedem Windows-Texteditor, gibt es keine Anforderung für Anwendungen ist ein Win32-Edit-Steuerelement für die Textbearbeitung Bedürfnisse zu verwenden (und in der Tat zu tun wäre, nur neu zu erfinden Notepad so sein). Es gibt keine Standard-Win32-API-Methode, um herauszufinden, wo der Cursor zeigt, weil die Anwendung ist kostenlos Text auf dem Bildschirm in irgendeiner Weise zu zeichnen Gutdünken (und speichert diesen Text intern innerhalb der Anwendung ohne entsprechende API für Sie nennen).

Andere Tipps

Die besten Java-Codierung Praxis ist Ihr Code Betriebssystem plattformunabhängig, so weit wie möglich zu machen. Wenn Sie ein Programm zu implementieren versuchen, die intrinsisch ist Windows-spezifisch (z stark abhängig von Win32-APIs), wäre es besser, C ++ oder C # statt Java.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top