Italia
Foro

sendkey auf richedit

 
- Page 1 -



GDL
Hi Profaner

wieder kleine Sache,mit großer Auswikung

Nutze dieses Programm zur Mikrocontrolerprogramierung.Da der erzeugte Quelltext Atmel Assembler ist,ist es notwendig,das alle Zeilen aus meiner Anwendung korrekt übernommen werden.Eine Fehlersuche in ASM Code ohne debugger nervt jedesmal.

Nun zum Problem:
Da ich die Zeilen beim Laden einer File einzeln auswerten muss,habe ich folgendes zusammengebastelt:

WhileNot @Eof(#1)
Input #1,wert$
InsertString editor&,wert$
sleep 20 sonst wird Return verschluckt
@SendKey(editor&,13) Return senden
Sprungmarken ermitteln

Ein Einbauen einer Schleife ,sowie ein Erhöhen des sleepwertes hilft nichts,es werden immer einige Return verschluckt.
ohne sleep werden alle Zeilen aneinandergefügt.

Die letzte Möglichkeit wäre die File als .txt komplett einzulesen und dann
die Zeilen auszuwerten.Möchte mir aber wenns possibile ist eine komplette Neuprogr.dieses Programmteiles ersparen.

Auch if sein Vorschlag mit settimer waitinput killtimer geht nicht.

Meine Modelleisenbahn macht mich noch zum Windowsprogramierer.Hätt ich auch nie gedacht.

Mit freundlichen Grüßen
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
12.02.2005  
 



 
- Page 1 -



GDL
Hi Andreas,

Danke.Wie durch Geisterhand wird die Win.ini in Wordpad geladen.
Geht gleich in meine API Anwendugssammlung.Riesig net,dass Du mir gleich die Tastenbelegung mitgeliefert hast.

Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
13.02.2005  
 



 
- Page 2 -


Hallo Georg...

So ganz nebenbei lassen sich auch mit dem fünften Parameter der Funktion bei Bedarf Daten zwischen zwei Anwendungen austauschen (z.B.Handles). Diese Daten können vom Empfänger mit der API GetMessageExtraInfo recht einfach ausgelesen werden...
 
14.02.2005  
 




GDL
Hi Andreas,

ist der fünfte Parameter unkritisch,oder sollte man lieber die Finger davon lassen und nicht rumprobieren.
Nehme an,dass die Daten in einer Bereichsvariablen stehen müssen(bei string variablen oder Text).

Habe momentan Elan,muss ich ausnutzen.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
14.02.2005  
 



Hallo Georg...

Versuchs mal mit Longint (z.B. Handle&) oder einem 4Byte großem Bereich...
 
14.02.2005  
 




GDL
Hi Andreas,

hast mich missverstanden.Habs mit dem 5.ten Parameter noch nicht versucht,da ich bei einem Fehler nicht weiß,obs fürs System Folgen hat.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
14.02.2005  
 



Au verflixt!


Ich meinte naturalmente den 4.Parameter - und damit gibt es keine Problem - aber bitte Longint oder 4Byte Bereich nehmen...
 
14.02.2005  
 




Jörg
Sellmeyer
Hallo Georg,
Du könntest auch erst den ganzen String zusammenfügen und dann an den Editor senden.

declare Inhalt$
Whilenot eof(#1)
input #1,Zeile$
Inhalt$=Zeile$+Chr$(13) + Chr$(10)
Wend
InsertString editor&,Inhalt$

oder den Text in Eine Bereichsvariable laden und dann an das Richeditcontrol senden.
Dafür habe ich allerdings im Moment nicht die entsprechenden Sendmessagewerte parat.
Saluto
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
14.02.2005  
 



Hallo Georg...

Wenn ich mir da so Jörgs Posting ansehe, hilft dir vielleicht das hier auch noch weiter. Für @addr(TEXT$) kannst du auch einen Bereich einsetzen:
KompilierenMarkierenSeparieren
WINDOWSTYLE 31+512
WINDOWTITLE "RichEdit"
WINDOW 0,0-640,440
Declare RichEdit&,DLL_HDL&,Text$
DLL_HDL&=@UseDLL($SYSPATH+"RICHED20.DLL")
LET RichEdit&=@Control("RichEdit20A","",$40000000+$10000000+4+$1000+$800000+$200000+$100000,20,20,300,300,%HWND,2112,%HINSTANCE)
@SENDMESSAGE(RichEdit&,$0400+53,0,$7FFFFFF0)
LEt Text$="Hallo "
@SendMessage(RichEdit&,$00C2,0,@ADDR(Text$)) Text einfügen/ersetzen
LEt Text$="da!"
@SendMessage(RichEdit&,$00C2,0,@ADDR(Text$)) Text einfügen/ersetzen
@SendMessage(RichEdit&,$00B1,6,6) Cursor setzen oder markieren
LEt Text$="du "
@SendMessage(RichEdit&,$00C2,0,@ADDR(Text$)) Text einfügen/ersetzen

whilenot %MENUITEM=-2

    WAITINPUT

wend

@DESTROYWINDOW(RichEdit&)
15.02.2005  
 



[quote:3b08329bed=Jörg Sellmeyer]Hallo Georg,
Du könntest auch erst den ganzen String zusammenfügen und dann an den Editor senden.

declare Inhalt$
Whilenot eof(#1)
input #1,Zeile$
Inhalt$=Zeile$+Chr$(13) + Chr$(10)
Wend
InsertString editor&,Inhalt$

oder den Text in Eine Bereichsvariable laden und dann an das Richeditcontrol senden.
Dafür habe ich allerdings im Moment nicht die entsprechenden Sendmessagewerte parat.
Saluto
Jörg[/quote:3b08329bed]So ich dies schrieb schon vor 10 Beiträgen.

Salve, iF
 
15.02.2005  
 



Beim Brainstorming kommen auch schon mal zwei auf den selben Gedanken...
 
15.02.2005  
 




GDL
Hi,

Jörg und If,hatte chr$(10) und chr$(13) an String anfügen schon ausprobiert.Egal, ob einzeln einlesen oder zusammenhängend,in beiden
Beispielen wird alles in einem langen String ohne Zeilenumbruch eingefügt.Habe es bereits ganz anders gelöst.Lese erst die File mit eof ohne Insertstring ein,werte meine Zeilen aus und lese dann die ganze File als .txt ins Richedit ein.

Nochmals Danke an Euch und verbleibe mit freundlichen Grüßen
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
15.02.2005  
 



Wird zwar auch nix dran ändern aber in Windows ist es #13#10 statt #10#13.

Salve, iF
 
15.02.2005  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

8.104 Views

Untitledvor 0 min.
H.Brill vor 15 Tagen
RudiB.27.09.2022
Matzbub30.12.2018
W.L.05.07.2017
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie