|  | 
|   | 
 | 
  GDL | Hallo,
  finde einfach den Fehler nicht.Es sollte die aktuelle Zeile als String ausgelesen werden, bekomme aber nur mit Dim buffer#,255 nur Striche zurück  und mit der anderen Dim version nen Programmabsturz. Danke. KompilierenMarkierenSeparierendeclare hrtf&,line&,buffer#,ende%,dll&,zeile$,line1&
dll&=usedll("riched32.dll")
Def GetIntResult(0)&(0)                              für Suchfunktion
Def GetStringResult(0)$(0)
Def GetLineNr(1) SendMessage(&(1),$0436,0,-1)  EM_EXLINEFROMCHAR Nullbasiert!
Def GetLineCount(1) SendMessage(&(1),$BA,0,0)  Zeilenanzahl
Def GetLineLength(2) SendMessage(&(1),$0C1,&(2),0)  em_getlinelength
Def IsWindow(1) !"USER32","IsWindow"
window 0,0 -1024,748
hrtf&=Control("richedit20a","",$54315004,5,0,800,400,%hwnd,2000,%hinstance)
setfocus(hrtf&)
sendstring(hrtf&,"Dies ist ein Test")
sendstring(hrtf&,chr$(10))
Proc GetLine
    Parameters hrtf&,line&
    Declare resulto$,l&
    GetLineLength(hrtf&,line&)
    Case Or(Equ(IsWindow(hrtf&),0),Equ(GetLineLength(hrtf&,line&),0)): Return ""
    Dim buffer#,Add(GetLineLength(hrtf&,line&),1)
    dim buffer#,255
    SendMessage(hrtf&,$0C4,line&,buffer#)
    Let resulto$=Char$(buffer#,0,255)
    Dispose buffer#
    Return resulto$
EndProc
======================================================================
Proc GetCurrentLine
    Parameters hrtf&
    GetLine hrtf&,GetLineNr(hrtf&)
    Return GetStringResult()
EndProc
=======================================================================
whilenot ende%
    GetCurrentLine hrtf&
    Let zeile$=GetStringResult()
    drawtext 1,600,zeile$
wend
case dll&:freedll dll&
 Servus Georg |  
  | 
|   | 
 |  | 
|   | 
 
 
  | 
 | 
  GDL | Hat sich erledigt.
  Servus Georg |  
  | 
|   | 
 |  | 
|   | 
 
 
  | 
 | 
  Michael Wodrich | DIM könnte empfindlich auf das SendMessage reagieren.
  Versuche es mal mit Zwischenspeicherung der Werte und Angabe einer Variablen bei DIM.
  LineCount: Es wird die Anzahl der Zeilen zurückgegeben, aber die Zählung beginnt auch hier (glaube ich) bei Null. Du müßtest es mal mit Rückgabewert -1 versuchen.
  (nur theoretisiert; Angst vor dem angekündigten Absturz)
  MfG Michael Wodrich |  
  | 
|   | 
 | Programmieren, das spannendste Detektivspiel der Welt.  | 20.05.2005  ▲ |  
  | 
|   | 
 
 
  | 
 | 
  GDL | Hab den Fehler,
  iss ein Fehler in der wfrtf.inc.
  statt    Return resulto$ muss es  Return trim$(resulto$)         heissen.
  Servus Georg |  
  | 
|   | 
 |  | 
|   | 
 
 
  |