Font bei RTFEdit ändern

  • hallo


    Ich hab diese RTFEdit *klick* dort wöllte ich gerne die Schriftart ändern aber irgendwie klappt es nicht :(

    hat jemand ne Idee wie das gehen könnte?


    mfg

    derda

  • Nein, leider nicht.....

    Viele Grüße
    Carsten


    P.S.: *lacht* - na ja das war natürlich nicht alles was ich sagen wollte *grins*

    Leider kann ich Dir hier nicht weiterhelfen, weil ich mich zwar auch gerne mit den RTF-Modulen beschäftigen würde, aber bisher nicht klar komme (und gerade keine Zeit für umfangreiche Suchen habe).

    Ich finde ja nicht einmal 'GUICtrlCreateRTFEdit' wie in dem Link als Beispiel enthalten...... aber ich beobachte weiter.....

  • ich hab jetzt mal nen bisschen gearbeitet und denke das ich erstmal mit der schriftart leben kann.

    nur brauch ich jetzt unbedingt eine Möglichkeit im code-teil codeabschnitte markieren zu lassen... _guictrleditsetsel hat leider nicht funktioniert :(

    jemand ne idee wie ich es trotzdem einigermaßen gut markieren könnte?

    mir kam auch eine idee mit kleinen halbtransparenten guis aber ich habe keine Ahnung wie ich die sauber über dem Text formatieren könnte :(

    hier mal der code bis jetzt (nicht lachen^^ ist noch sehr schlampig geschrieben...)

    Spoiler anzeigen
    [autoit]

    HotKeySet("{esc}","_exit")
    ;includes----------------------------------
    #include <ie.au3>
    #include <GUIConstants.au3>
    #include <RTF_writer.au3>
    #include <guiedit.au3>
    ;endinclude--------------------------------
    ;gui erstellen-----------------------------
    $hPlug = PluginOpen ("rtfplugin.dll")
    $oIE = _IECreateEmbedded()
    $hGUI = GUICreate('Eurocom - HTML',@DesktopWidth,@DesktopHeight,0,0,$ws_popup)
    $group1 = GUICtrlCreateGroup("HTML code :",10,10,@DesktopWidth/2-20,@DesktopHeight-20)
    $hEdit = GUICtrlCreateRTFEdit($hGUI,20,30,@desktopwidth/2-40,@DesktopHeight-50)
    $group2 = GUICtrlCreateGroup("Browser :",@DesktopWidth/2+10,10,@DesktopWidth/2-20,@DesktopHeight-20)
    $title = GUICtrlCreateLabel(" Title of the HTML-file - Microsoft Internet Explorer",@DesktopWidth/2+20,30,@DesktopWidth/2-41,20)
    GUICtrlSetBkColor($title,0x0000ff)
    GUICtrlSetFont($title,11,-1,-1,"Arial Black")
    GUICtrlSetColor($title,0xffffff)
    $ObjIE = GUICtrlCreateObj($oIE,@DesktopWidth/2+20,50,@DesktopWidth/2-40,@DesktopHeight-70)
    _IENavigate($oIE,"www.google.de")
    GUISetBkColor(0xffffff)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    _PutsomeText(@CRLF&"<html>"&@CRLF,0x0000ff,@CRLF)
    _PutsomeText(@TAB&"<head>",0x0000ff,@CRLF)
    _PutsomeText(@TAB&@TAB&"<title>",0x0000ff)
    _PutsomeText("Title of the HTML-file",0x000000)
    _PutsomeText("</title>",0x0000ff,@CRLF)
    _PutsomeText(@TAB&"</head>",0x0000ff,@CRLF)
    _PutsomeText(@CRLF&@TAB&"<body ",0x0000ff)
    _PutsomeText("bgcolor",0xff5500)
    _PutsomeText("=",0x0000ff)
    _PutsomeText('"red"',0x999999)
    _PutsomeText(">",0x0000ff,@CRLF)
    _PutsomeText(@TAB&@TAB&"some text",0x000000,@CRLF)
    _PutsomeText(@TAB&"</body>",0x0000ff,@CRLF&@CRLF)
    _PutsomeText("</html>",0x0000ff)

    [/autoit] [autoit][/autoit] [autoit]

    _IEDocWriteHTML($oIE,"<html><body bgcolor='red'><br>some text</body></html>")

    [/autoit] [autoit][/autoit] [autoit]

    _GUICtrlEditSetSel($hEdit,1,50)
    While 1
    ;_PutsomeText("1234",Random(255*255*255,1),@CRLF)
    Sleep(10)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _exit()
    Exit
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _PutsomeText($sText,$color,$crlf="")
    Local $out = _RTFCreateDocument("MS Sans Serif")
    $out = _RTFAppendString($out, " " & $sText &$crlf,$color, 12, 1, "MS Sans Serif")
    GUICtrlRTFSet($hEdit, $out, 1)
    EndFunc

    [/autoit]


    mfg


    derda


    edit: arghh chaos.... bitte zusammenfügen :D

    edit2:

    hab jetzt mal ne kleine und wie ich finde, sehr schöne Funktion geschrieben.... nur hab ich keine Ahnung wie ich das jetzt hinbekommen könnte, das es über den entsprechenden stellen des textes ist...

    [autoit]

    Func _mark($width,$height,$left,$top,$color=0x00ff00,$trans=200)
    $gui = GUICreate(Random(1,1000),$width,$height,$left,$top,$ws_popup,$ws_ex_toolwindow+$ws_ex_topmost)
    GUISetBkColor($color)
    WinSetTrans($gui,"",$trans)
    GUISetState(@SW_SHOWNOACTIVATE)
    EndFunc

    [/autoit]

    da müssen wohl die profis ran...

    net wäre wenn ich die funktion so aufrufen könnte: _mark("<html>",0xffff00,200) was mir das/die wort/wörter in gelb mit transparenz 200 hervorhebt...

    HELFT MIR!!! ;(

    ps: ich bin für alles dankbar... lösungsansätze,lösungen,"schau dir die funktion mal an",..,.,.,.,....:D


    edit3^^:

    sodele jetzt hab ich mir ne funktion geschrieben die die Position von markiertem text anzeigt... das geht zunächst^^

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    HotKeySet("a","_getthem")
    $handle = FileOpen("marks.txt",1)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _getthem()
    Local $ret[5]
    $pixel = PixelSearch(0,0,@DesktopWidth,@DesktopHeight,0x316AC5)
    If @error Then
    MsgBox(0,"","versagt!")
    EndIf
    $ret[0] = $pixel[0]
    $ret[1] = $pixel[1]
    $ret[2] = _getx ($pixel[0],$pixel[1]) -$ret[0]
    $ret[3] = _gety ($pixel[0],$pixel[1]) -$ret[1]
    $mark =_mark($ret[2],$ret[3],$ret[0],$ret[1])
    $ret[4] = InputBox("Name eingeben","gib einen namen für "&@CRLF&"left="&$ret[0]&@CRLF&"top="&$ret[1]&@CRLF&"width="&$ret[2]&@CRLF&"height="&$ret[3]&@CRLF&"ein:")
    _markdelete($mark)
    If $ret[4] <> "" Then
    FileWrite($handle,"---------------------"&@CRLF&$ret[4]&":"&@CRLF&"left="&$ret[0]&@CRLF&"top="&$ret[1]&@CRLF&"width="&$ret[2]&@CRLF&"height="&$ret[3]&@CRLF)
    EndIf
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _mark($width,$height,$left,$top,$color=0x00ff00,$trans=200)
    Local $gui
    $gui = GUICreate(Random(1,1000),$width,$height,$left,$top,$ws_popup,$ws_ex_toolwindow+$ws_ex_topmost)
    GUISetBkColor($color)
    WinSetTrans($gui,"",$trans)
    GUISetState(@SW_SHOWNOACTIVATE)
    Return $gui
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _markdelete($handle)
    Return GUIDelete($handle)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _getx($x,$y)
    While 1
    $x = $x +1
    If PixelGetColor($x,$y) <> 0x316AC5 Then
    Return $x
    EndIf
    WEnd
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _gety($x,$y)
    While 1
    $y = $y +1
    If PixelGetColor($x,$y) <> 0x316AC5 Then
    Return $y
    EndIf
    WEnd
    EndFunc

    [/autoit]

    so long...

    3 Mal editiert, zuletzt von derda (18. November 2007 um 20:00)