| Autor |
Beitrag |
Grolle
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 15:03
Hallo!
Ich bin wie ihr bald merken werdet noch Anfänger
Im Moment erstelle ich zu Übungszwecken einen Html Editor. Ich möchte jetzt mit von einer zur Laufzeit erstellten Form auf eine vorher erstellte Form (auf das Synedit) zugreifen, aber das funktioniert einfach nicht.
Hiiilllfffeeeeee....
Grolle
Moderiert von Tino: Überflüssige Absätze entfernt.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 15:05
Hallo und  hier im Delphi-Forum.de!
| Grolle hat folgendes geschrieben: | | mit von einer zur Laufzeit erstellten Form auf eine vorher erstellte Form (auf das Synedit) zugreifen |
Sorry, aber ich verstehe dein Problem nicht. Vielleicht versuchtst du dein Problem etwas genauer und ausführlicher zu erklären. Dann können wir dir auch besser helfen.
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 15:14
Ok ich versuch das mal: Die Anwendung ist eine Mdi Anwendung. Im Mdi Child (Form2)befindet sich eine Toolleiste. Wenn man dort auf den Button 'Layout Manager' klickt öffnet sich ein neues Formular (Form4). Hier kann man z. B. die Hex-Werte für die Farben (Links, Hintergrund) eingeben. Nun will ich diese Werte aus dem Formular (Form4) auf dasSynedit im Mdi Child (Form2)Fenster übertragen.
War das verständlicher?
P. S.: Das Mdi Child (Form2) wird nicht automatisch erstellt.
Grolle
Moderiert von Tino: Überflüssige Absätze entfernt.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 16:43
Hallo!
Wenn du das Form4 schließt brauchst du doch nur die Werte aus diesen der SynEdit-Komponente zuweisen.
Hier mal ein Beispiel:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| Procedure Form2.LayoutManagerClick (Sender: TObject); Var LayoutManagerForm: TForm4; Begin LayoutManagerForm := TForm4.Create (nil); Try If not IsAbortResult (LayoutManagerForm.ShowModal) Then Begin SynEditKomponente.Wert1 := LayoutMangerForm.Edit1.Text; End; Finally LayoutManagerForm.Free; End; End; |
Die markierte Stelle im Code musst du natürlich anpassen da ich die Eigenschaften nicht kenne die du genau zuweisen möchtest.
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 16:50
Ich verstehe nur Bahnhof
Ich schicke mal den Aufruf:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure TForm4.Button1Click(Sender: TObject); var e1, e2, e3, e4, e5, e6, e7, e8, e9 : string; Form : TForm2; begin e1 := Edit2.Text; e2 := Edit9.Text; e3 := Edit3.Text; e4 := Edit4.Text; e5 := Edit5.Text; e6 := Edit1.Text; e7 := Edit6.Text; e8 := Edit7.Text; e9 := Edit8.Text; Form.Show; Form.SynEdit1.SelText := 'Hier soll dann mal der Text mit den übernommenen Variablen stehen' end; |
Bei der Ausführung gibt es dann einen EAccess violation Fehler.
Viele Grüße: Grolle
Moderiert von Tino: Code- durch Delphi-Tags ersetzt.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 17:01
| Grolle hat folgendes geschrieben: | Ich verstehe nur Bahnhof  |
Was genau verstehst du nicht?
| Grolle hat folgendes geschrieben: | | Ich schicke mal den Aufruf:[...] |
Wann wird dieser Code ausgeführt bzw. was ist Button1?
Willst du mit Form.Show ein neues MDI-Child-Fenster anzeigen? Du musst das Fenster auch erst erzeugen. Wie das geht steht oben in meinem Sourcecode.
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 17:10
Hallo!
Nein, ich will auf ein bestehendes Mdi Child zugreifen.
Button 1 ist ein normaler Button welcher im Moment am Ende von Formular 4 steht.
Muss ich deinen Text ins Mdi Child (Form2) einfügen?
Viele Grüße:
Grolle
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 17:20
Hallo!
| Grolle hat folgendes geschrieben: | | Nein, ich will auf ein bestehendes Mdi Child zugreifen. |
Dann ist dein Sourcecode aber noch "falscher"  Einfach eine Variable vom Type TForm2 zu deklarieren reicht nicht. Du musst der Variable noch einen vernüftigen Wert zuweisen. Entweder durch den Aufruf des Konstruktors (s. mein Code oben) oder durch Zuweisung einer schon vorhandenen Form-Instance.
| Grolle hat folgendes geschrieben: | | Muss ich deinen Text ins Mdi Child (Form2) einfügen? |
Du meinst hoffentlich meinen Sourcecode. Einfach so einfügen geht nicht. Du solltest dir schon im klaren sein was der Sourcecode macht.
Ich habe die Procedure extra LayoutManagerClick genannt zum einen da ich nicht weiß wie du deine Buttons benennst und zum anderen damit du sofort weist wofür der Code gedacht ist. Wenn du auf deinem MDI-Child Fenster den Button "Layout Manager" anklickst sollte mein Sourcecode ausgeführt werden. Also packe meinen Sourcecode in die Ereignisbehandlung für deinen "Layout Manager"-Button.
Der Sourcecode macht nichts anderes als eine Instance von TForm4 zu erstellen und das Fenster anzeigen. Wenn das Fenster mit dem OK-Button geschlossen wird wird die markierte Zeile:
Delphi-Quelltext 1:
| SynEditKomponente.Wert1 := LayoutMangerForm.Edit1.Text; |
ausgeführt. Hier musst du dann deine Eigenschaften setzen.
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 17:34
Hallo!
Wie weise ich den eine vorhandene Form-Instanz zu?
Habe deinen Text jetzt soweit geändert und eingefügt.
IsAbortResult ist ein undefinierter Bezeichner?
Viele Grüße: Grolle
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 17:44
| Grolle hat folgendes geschrieben: | | Wie weise ich den eine vorhandene Form-Instanz zu? |
Irgendwie musst du diese an Form4 übergeben. Aber wenn du das so wie in meinem Beispiel machst must du das so wie so nicht machen.
| Grolle hat folgendes geschrieben: | | IsAbortResult ist ein undefinierter Bezeichner? |
Du benutzt ja D3. Da sollte die Funktion noch nicht vorhanden sein. Benutzt deshalb direkt die Konstanten. Also so:
Delphi-Quelltext 1:
| if ShowModal = mrOk Then |
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 17:58
Hallo!
Jetzt bekomme ich wieder ne Fehlermeldung:
| Zitat: | | EInvalid Operation (Aus einem sichtbaren Fenster kann kein modales gemacht werden. |
Viele Grüße: Grolle
Moderiert von Tino: Quote-Tags hinzugefügt.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 18:00
Poste mal bitte den Sourcecode.
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 18:05
Ok hier ist Unit 2 (Nicht geändert, weil nicht gespeichert  )
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: 186: 187: 188: 189: 190: 191: 192: 193: 194: 195: 196: 197: 198: 199: 200: 201: 202: 203: 204: 205: 206: 207: 208: 209: 210: 211: 212: 213: 214: 215: 216: 217: 218: 219: 220: 221: 222: 223: 224: 225: 226: 227: 228: 229: 230: 231: 232: 233: 234: 235: 236: 237: 238: 239: 240: 241: 242: 243: 244: 245: 246: 247: 248: 249: 250: 251: 252: 253: 254: 255: 256: 257: 258: 259: 260: 261: 262: 263: 264: 265: 266: 267: 268: 269: 270: 271: 272: 273: 274: 275: 276: 277: 278: 279: 280: 281: 282: 283: 284: 285: 286: 287: 288: 289: 290: 291: 292: 293: 294: 295: 296: 297: 298: 299: 300: 301: 302: 303: 304: 305: 306: 307: 308: 309: 310: 311: 312: 313: 314: 315: 316: 317: 318: 319: 320: 321: 322: 323: 324: 325: 326: 327: 328: 329: 330: 331: 332: 333: 334: 335: 336: 337: 338: 339: 340: 341: 342: 343: 344: 345: 346: 347: 348: 349: 350: 351: 352: 353: 354: 355: 356: 357: 358: 359: 360: 361: 362: 363: 364: 365: 366: 367: 368: 369: 370: 371: 372: 373: 374: 375: 376: 377: 378: 379: 380: 381: 382: 383: 384: 385: 386: 387: 388: 389: 390: 391: 392: 393:
| unit Unit2;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, ComCtrls, SynEditHighlighter, SynHighlighterHtml, SynEdit, ToolWin, Clipbrd, Printers, Unit1, StdCtrls, Buttons, SynCompletionProposal, SynEditPrint, SynAutoCorrect, ShellApi, ExtCtrls, SynEditExport, SynExportHTML;
type TForm2 = class(TForm) MainMenu1: TMainMenu; SaveDialog1: TSaveDialog; FontDialog1: TFontDialog; Datei1: TMenuItem; Neu1: TMenuItem; ffnen1: TMenuItem; Schlieen1: TMenuItem; Speichern1: TMenuItem; Speichernals1: TMenuItem; Drucken1: TMenuItem; Druckereinrichten1: TMenuItem; N1: TMenuItem; Beenden1: TMenuItem; Bearbeiten1: TMenuItem; Ausschneiden1: TMenuItem; Kopieren1: TMenuItem; Einfgen1: TMenuItem; Lschen1: TMenuItem; N2: TMenuItem; Allesauswhlen1: TMenuItem; Fenster1: TMenuItem; Nebeneinander1: TMenuItem; Hintereinander1: TMenuItem; SynEdit1: TSynEdit; SynHTMLSyn1: TSynHTMLSyn; ToolBar1: TToolBar; BitBtn6: TBitBtn; PrintDialog1: TPrintDialog; PrinterSetupDialog1: TPrinterSetupDialog; SynEditPrint1: TSynEditPrint; BitBtn5: TBitBtn; BitBtn1: TBitBtn; BitBtn2: TBitBtn; BitBtn3: TBitBtn; Rckgngig1: TMenuItem; Wiederherstellen1: TMenuItem; Einfgen2: TMenuItem; headtag1: TMenuItem; bodytag1: TMenuItem; title1: TMenuItem; Bild1: TMenuItem; Tabelle1: TMenuItem; FormatierterText1: TMenuItem; HyperlinkBild1: TMenuItem; AusschneidenStrgX1: TMenuItem; Hilfe1: TMenuItem; HtmEditHilfe1: TMenuItem; HtmEditInfo1: TMenuItem; BitBtn4: TBitBtn; BitBtn7: TBitBtn; BitBtn8: TBitBtn; BitBtn9: TBitBtn; BitBtn10: TBitBtn; BitBtn11: TBitBtn; procedure FormCreate(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Neu1Click(Sender: TObject); procedure ffnen1Click(Sender: TObject); procedure Schlieen1Click(Sender: TObject); procedure Speichern1Click(Sender: TObject); procedure Speichernals1Click(Sender: TObject); procedure Ausschneiden1Click(Sender: TObject); procedure Kopieren1Click(Sender: TObject); procedure Einfgen1Click(Sender: TObject); procedure Lschen1Click(Sender: TObject); procedure Allesauswhlen1Click(Sender: TObject); procedure Nebeneinander1Click(Sender: TObject); procedure Hintereinander1Click(Sender: TObject); procedure Beenden1Click(Sender: TObject); procedure BitBtn4Click(Sender: TObject); procedure Font1Click(Sender: TObject); procedure BitBtn6Click(Sender: TObject); procedure BitBtn5Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject); procedure Rckgngig1Click(Sender: TObject); procedure Wiederherstellen1Click(Sender: TObject); procedure headtag1Click(Sender: TObject); procedure bodytag1Click(Sender: TObject); procedure title1Click(Sender: TObject); procedure Bild1Click(Sender: TObject); procedure FormatierterText1Click(Sender: TObject); procedure Tabelle1Click(Sender: TObject); procedure HyperlinkBild1Click(Sender: TObject); procedure AusschneidenStrgX1Click(Sender: TObject); procedure Drucken1Click(Sender: TObject); procedure Druckereinrichten1Click(Sender: TObject); procedure BitBtn7Click(Sender: TObject); procedure BitBtn8Click(Sender: TObject); procedure BitBtn9Click(Sender: TObject); procedure BitBtn10Click(Sender: TObject); procedure HtmEditInfo1Click(Sender: TObject);
private pfad: string; public procedure dateiffnen(const dateiName: string); end;
var Form2: TForm2;
const standardFileName = 'Neues Formular';
implementation
Uses Unit3, Unit4; {$R *.DFM}
procedure TForm2.FormCreate(Sender: TObject); begin pfad := StandardFileName; SaveDialog1.Filter := 'Html Dateien (*.html; *.htm)|*.html; *.htm|Alle Dateien (*.*)|*.*'; SaveDialog1.DefaultExt := 'html; htm'; end;
procedure TForm2.dateiffnen; begin Pfad := dateiName; Caption := ExtractFileName(dateiName); with SynEdit1 do begin Lines.LoadFromFile(Pfad); SelStart := 0; Modified := False end end;
procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean); const warnText = 'Änderungen speichern in %s?'; begin if SynEdit1.Modified then begin case MessageDlg(Format(warnText, [pfad]), mtConfirmation, [mbYes, mbNo, mbCancel], 0) of idYes: Speichern1Click(Self); idCancel: CanClose := False end end end;
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree end;
procedure TForm2.Neu1Click(Sender: TObject); begin Form1.Neu1Click(Sender) end;
procedure TForm2.ffnen1Click(Sender: TObject); begin Form1.ffnen1Click(Sender) end;
procedure TForm2.Schlieen1Click(Sender: TObject); begin Close end; procedure TForm2.Speichern1Click(Sender: TObject); begin if pfad = StandardFileName then Speichernals1Click(Sender) else begin SynEdit1.Lines.SaveToFile(pfad); SynEdit1.Modified := False end end;
procedure TForm2.Speichernals1Click(Sender: TObject); begin SaveDialog1.FileName := pfad; if SaveDialog1.Execute then begin Pfad := SaveDialog1.FileName; Caption := ExtractFileName(pfad); Speichern1Click(Sender) end end;
procedure TForm2.Ausschneiden1Click(Sender: TObject); begin SynEdit1.CutToClipboard end;
procedure TForm2.Kopieren1Click(Sender: TObject); begin SynEdit1.CopyToClipboard end;
procedure TForm2.Einfgen1Click(Sender: TObject); begin SynEdit1.PasteFromClipboard end;
procedure TForm2.Lschen1Click(Sender: TObject); begin SynEdit1.ClearSelection end;
procedure TForm2.Allesauswhlen1Click(Sender: TObject); begin SynEdit1.SelectAll end;
procedure TForm2.Nebeneinander1Click(Sender: TObject); begin Form1.Tile; end;
procedure TForm2.Hintereinander1Click(Sender: TObject); begin Form1.Cascade end;
procedure TForm2.Beenden1Click(Sender: TObject); begin Form1.Beenden2Click(Sender) end;
procedure TForm2.BitBtn4Click(Sender: TObject); begin Form4.Show end;
procedure TForm2.Font1Click(Sender: TObject); begin FontDialog1.Execute; SynEdit1.Font := FontDialog1.Font; end;
procedure TForm2.BitBtn6Click(Sender: TObject); begin if pfad = StandardFileName then Speichernals1Click(Sender) else begin SynEdit1.Lines.SaveToFile(pfad); SynEdit1.Modified := False end end;
procedure TForm2.BitBtn5Click(Sender: TObject); begin SynEditPrint1.Lines := SynEdit1.Lines; SynEditPrint1.Wrap := true; SynEditPrint1.Print; end;
procedure TForm2.BitBtn1Click(Sender: TObject); begin SynEdit1.Undo end;
procedure TForm2.BitBtn2Click(Sender: TObject); begin SynEdit1.Redo end;
procedure TForm2.BitBtn3Click(Sender: TObject); begin close end;
procedure TForm2.Rckgngig1Click(Sender: TObject); begin SynEdit1.Undo end;
procedure TForm2.Wiederherstellen1Click(Sender: TObject); begin SynEdit1.Redo end;
procedure TForm2.headtag1Click(Sender: TObject); begin SynEdit1.SelText := '<html>'+#13#10+ '<head>'+#13#10+ '<title> Hier bitte den Namen der Seite eintragen </title>'+#13#10+ '</head>'+#13#10+ ''; end;
procedure TForm2.bodytag1Click(Sender: TObject); begin SynEdit1.SelText := '<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">' +#13#10+ ''+#13#10+ ''+#13#10+ ''+#13#10+ ''+#13#10+ '</body>'+#13#10+ '</html>'; end;
procedure TForm2.title1Click(Sender: TObject); begin SynEdit1.SelText := '<p><a href="http://www.ihrlink.de">Linktext</a></p>'+#13#10+ ''; end;
procedure TForm2.Bild1Click(Sender: TObject); begin SynEdit1.SelText := '<p><img src="Bildname+.Dateiendung" width="" height="" border="0"></p>'+#13#10+ ''; end;
procedure TForm2.FormatierterText1Click(Sender: TObject); begin SynEdit1.SelText := '<p><font face="Arial" size="2">Hier den Text eingeben</font></p>'+#13#10+ ''; end;
procedure TForm2.Tabelle1Click(Sender: TObject); begin SynEdit1.SelText := '<table>'+#13#10+ '<tr><td width="200">Tabellentext</td><td width="200">Tabellentext</td></tr>'+#13#10+ '<tr><td width="200">Tabellentext</td><td width="200">Tabellentext</td></tr>'+#13#10+ '</table>'+#13#10+ ''; end;
procedure TForm2.HyperlinkBild1Click(Sender: TObject); begin SynEdit1.SelText := '<p><a href="http://www.ihrlink.de">'+ '<img src="Bildname+.Dateiendung" width="" height="" border="0"></a></p>'+#13#10+ ''; end;
procedure TForm2.AusschneidenStrgX1Click(Sender: TObject); begin SynEdit1.CutToClipboard end;
procedure TForm2.Drucken1Click(Sender: TObject); begin SynEditPrint1.Lines := SynEdit1.Lines; SynEditPrint1.Wrap := true; SynEditPrint1.Print; end;
procedure TForm2.Druckereinrichten1Click(Sender: TObject); begin PrinterSetupDialog1.Execute end;
procedure TForm2.BitBtn7Click(Sender: TObject); begin SynEdit1.CutToClipboard end;
procedure TForm2.BitBtn8Click(Sender: TObject); begin SynEdit1.CopyToClipboard end;
procedure TForm2.BitBtn9Click(Sender: TObject); begin SynEdit1.PasteFromClipboard end;
procedure TForm2.BitBtn10Click(Sender: TObject); begin SynEdit1.ClearSelection end;
procedure TForm2.HtmEditInfo1Click(Sender: TObject); begin Form3.Show end; end. |
Und hier die Unit 4 (Unit 3 ist nur ne Info Box):
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164:
| unit Unit4;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, Menus;
type TForm4 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; ColorDialog1: TColorDialog; BitBtn2: TBitBtn; BitBtn3: TBitBtn; BitBtn4: TBitBtn; BitBtn1: TBitBtn; Label7: TLabel; Label8: TLabel; Edit6: TEdit; Label9: TLabel; Edit7: TEdit; Label10: TLabel; Edit8: TEdit; Label11: TLabel; Edit9: TEdit; BitBtn5: TBitBtn; Button1: TButton; Button2: TButton; procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject); procedure BitBtn4Click(Sender: TObject); procedure BitBtn5Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject);
private public end;
var Form4: TForm4;
implementation
uses unit2;
{$R *.DFM}
procedure TForm4.BitBtn1Click(Sender: TObject); var farbe: TColor; ergebnis: String; begin if ColorDialog1.Execute then farbe := ColorDialog1.Color;
ergebnis := IntToHex(GetRValue(farbe),2)
+ IntToHex(GetGValue(farbe),2) + IntToHex(GetBValue(farbe),2);
Edit2.Text := '#'+(ergebnis); end;
procedure TForm4.BitBtn2Click(Sender: TObject); var farbe: TColor; ergebnis: String; begin if ColorDialog1.Execute then farbe := ColorDialog1.Color;
ergebnis := IntToHex(GetRValue(farbe),2)
+ IntToHex(GetGValue(farbe),2) + IntToHex(GetBValue(farbe),2);
Edit3.Text := '#'+(ergebnis); end;
procedure TForm4.BitBtn3Click(Sender: TObject); var farbe: TColor; ergebnis: String; begin if ColorDialog1.Execute then farbe := ColorDialog1.Color;
ergebnis := IntToHex(GetRValue(farbe),2)
+ IntToHex(GetGValue(farbe),2) + IntToHex(GetBValue(farbe),2);
Edit4.Text := '#'+(ergebnis); end;
procedure TForm4.BitBtn4Click(Sender: TObject); var farbe: TColor; ergebnis: String; begin if ColorDialog1.Execute then farbe := ColorDialog1.Color;
ergebnis := IntToHex(GetRValue(farbe),2)
+ IntToHex(GetGValue(farbe),2) + IntToHex(GetBValue(farbe),2);
Edit5.Text := '#'+(ergebnis); end;
procedure TForm4.BitBtn5Click(Sender: TObject); var farbe: TColor; ergebnis: String; begin if ColorDialog1.Execute then farbe := ColorDialog1.Color;
ergebnis := IntToHex(GetRValue(farbe),2)
+ IntToHex(GetGValue(farbe),2) + IntToHex(GetBValue(farbe),2);
Edit9.Text := '#'+(ergebnis); end; procedure TForm4.Button2Click(Sender: TObject); begin Form4.Close end;
procedure TForm4.Button1Click(Sender: TObject); var e1, e2, e3, e4, e5, e6, e7, e8, e9 : string; begin e1 := Edit2.Text; e2 := Edit9.Text; e3 := Edit3.Text; e4 := Edit4.Text; e5 := Edit5.Text; e6 := Edit1.Text; e7 := Edit6.Text; e8 := Edit7.Text; e9 := Edit8.Text; end;
end. |
Bin wohl nen schwieriger Fall, was?
Viele Grüße: Grolle
Moderiert von Tino: Code- durch Delphi-Tags ersetzt.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 18:16
Hallo!
Na den Code von mir oben musst du wohl (ich gehe davon aus in "BitBtn4Click") einfügen. Ansonsten kann ich den Fehler wohl schlecht finden.
Außerdem solltest du einen OK-Button auf Form4 platzieren. Die Eigenschaft ModalResult von diesem Button sollte auf mrOk stehen. Ein OnClick-Event brauchst du bei diesem Button nicht definieren.
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 18:33
Hallo!
Hier ist der Text:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: 186: 187: 188: 189: 190: 191: 192: 193: 194: 195: 196: 197: 198: 199: 200: 201: 202: 203: 204: 205: 206: 207: 208: 209: 210: 211: 212: 213: 214: 215: 216: 217: 218: 219: 220: 221: 222: 223: 224: 225: 226: 227: 228: 229: 230: 231: 232: 233: 234: 235: 236: 237: 238: 239: 240: 241: 242: 243: 244: 245: 246: 247: 248: 249: 250: 251: 252: 253: 254: 255: 256: 257: 258: 259: 260: 261: 262: 263: 264: 265: 266: 267: 268: 269: 270: 271: 272: 273: 274: 275: 276: 277: 278: 279: 280: 281: 282: 283: 284: 285: 286: 287: 288: 289: 290: 291: 292: 293: 294: 295: 296: 297: 298: 299: 300: 301: 302: 303: 304: 305: 306: 307: 308: 309: 310: 311: 312: 313: 314: 315: 316: 317: 318: 319: 320: 321: 322: 323: 324: 325: 326: 327: 328: 329: 330: 331: 332: 333: 334: 335: 336: 337: 338: 339: 340: 341: 342: 343: 344: 345: 346: 347: 348: 349: 350: 351: 352: 353: 354: 355: 356: 357: 358: 359: 360: 361: 362: 363: 364: 365: 366: 367: 368: 369: 370: 371: 372: 373: 374: 375: 376: 377: 378: 379: 380: 381: 382: 383: 384: 385: 386: 387: 388: 389: 390: 391: 392: 393: 394: 395: 396: 397: 398: 399: 400: 401: 402: 403: 404: 405:
| unit Unit2;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, ComCtrls, SynEditHighlighter, SynHighlighterHtml, SynEdit, ToolWin, Clipbrd, Printers, Unit1, StdCtrls, Buttons, SynCompletionProposal, SynEditPrint, SynAutoCorrect, ShellApi, ExtCtrls, SynEditExport, SynExportHTML;
type TForm2 = class(TForm) MainMenu1: TMainMenu; SaveDialog1: TSaveDialog;
FontDialog1: TFontDialog; Datei1: TMenuItem; Neu1: TMenuItem; ffnen1: TMenuItem; Schlieen1: TMenuItem; Speichern1: TMenuItem; Speichernals1: TMenuItem; Drucken1: TMenuItem; Druckereinrichten1: TMenuItem; N1: TMenuItem; Beenden1: TMenuItem; Bearbeiten1: TMenuItem; Ausschneiden1: TMenuItem; Kopieren1: TMenuItem; Einfgen1: TMenuItem; Lschen1: TMenuItem; N2: TMenuItem; Allesauswhlen1: TMenuItem; Fenster1: TMenuItem; Nebeneinander1: TMenuItem; Hintereinander1: TMenuItem; SynEdit1: TSynEdit; SynHTMLSyn1: TSynHTMLSyn; ToolBar1: TToolBar; BitBtn6: TBitBtn; PrintDialog1: TPrintDialog; PrinterSetupDialog1: TPrinterSetupDialog; SynEditPrint1: TSynEditPrint; BitBtn5: TBitBtn; BitBtn1: TBitBtn; BitBtn2: TBitBtn; BitBtn3: TBitBtn; Rckgngig1: TMenuItem; Wiederherstellen1: TMenuItem; Einfgen2: TMenuItem; headtag1: TMenuItem; bodytag1: TMenuItem; title1: TMenuItem; Bild1: TMenuItem; Tabelle1: TMenuItem; FormatierterText1: TMenuItem; HyperlinkBild1: TMenuItem; AusschneidenStrgX1: TMenuItem; Hilfe1: TMenuItem; HtmEditHilfe1: TMenuItem; HtmEditInfo1: TMenuItem; BitBtn4: TBitBtn; BitBtn7: TBitBtn; BitBtn8: TBitBtn; BitBtn9: TBitBtn; BitBtn10: TBitBtn; BitBtn11: TBitBtn; procedure FormCreate(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Neu1Click(Sender: TObject); procedure ffnen1Click(Sender: TObject); procedure Schlieen1Click(Sender: TObject); procedure Speichern1Click(Sender: TObject); procedure Speichernals1Click(Sender: TObject); procedure Ausschneiden1Click(Sender: TObject); procedure Kopieren1Click(Sender: TObject); procedure Einfgen1Click(Sender: TObject); procedure Lschen1Click(Sender: TObject); procedure Allesauswhlen1Click(Sender: TObject); procedure Nebeneinander1Click(Sender: TObject); procedure Hintereinander1Click(Sender: TObject); procedure Beenden1Click(Sender: TObject); procedure BitBtn4Click(Sender: TObject); procedure Font1Click(Sender: TObject); procedure BitBtn6Click(Sender: TObject); procedure BitBtn5Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject); procedure Rckgngig1Click(Sender: TObject); procedure Wiederherstellen1Click(Sender: TObject); procedure headtag1Click(Sender: TObject); procedure bodytag1Click(Sender: TObject); procedure title1Click(Sender: TObject); procedure Bild1Click(Sender: TObject); procedure FormatierterText1Click(Sender: TObject); procedure Tabelle1Click(Sender: TObject); procedure HyperlinkBild1Click(Sender: TObject); procedure AusschneidenStrgX1Click(Sender: TObject); procedure Drucken1Click(Sender: TObject); procedure Druckereinrichten1Click(Sender: TObject); procedure BitBtn7Click(Sender: TObject); procedure BitBtn8Click(Sender: TObject); procedure BitBtn9Click(Sender: TObject); procedure BitBtn10Click(Sender: TObject); procedure HtmEditInfo1Click(Sender: TObject);
private pfad: string; public procedure dateiffnen(const dateiName: string); end;
var Form2: TForm2;
const standardFileName = 'Neues Formular';
implementation
Uses Unit3, Unit4; {$R *.DFM}
procedure TForm2.FormCreate(Sender: TObject); begin pfad := StandardFileName; SaveDialog1.Filter := 'Html Dateien (*.html; *.htm)|*.html; *.htm|Alle Dateien (*.*)|*.*'; SaveDialog1.DefaultExt := 'html; htm'; end;
procedure TForm2.dateiffnen; begin Pfad := dateiName; Caption := ExtractFileName(dateiName); with SynEdit1 do begin Lines.LoadFromFile(Pfad); SelStart := 0; Modified := False end end;
procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean); const warnText = 'Änderungen speichern in %s?'; begin if SynEdit1.Modified then begin case MessageDlg(Format(warnText, [pfad]), mtConfirmation, [mbYes, mbNo, mbCancel], 0) of idYes: Speichern1Click(Self); idCancel: CanClose := False end end end;
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree end;
procedure TForm2.Neu1Click(Sender: TObject); begin Form1.Neu1Click(Sender) end;
procedure TForm2.ffnen1Click(Sender: TObject); begin Form1.ffnen1Click(Sender) end;
procedure TForm2.Schlieen1Click(Sender: TObject); begin Close end; procedure TForm2.Speichern1Click(Sender: TObject); begin if pfad = StandardFileName then Speichernals1Click(Sender) else begin SynEdit1.Lines.SaveToFile(pfad); SynEdit1.Modified := False end end;
procedure TForm2.Speichernals1Click(Sender: TObject); begin SaveDialog1.FileName := pfad; if SaveDialog1.Execute then begin Pfad := SaveDialog1.FileName; Caption := ExtractFileName(pfad); Speichern1Click(Sender) end end;
procedure TForm2.Ausschneiden1Click(Sender: TObject); begin SynEdit1.CutToClipboard end;
procedure TForm2.Kopieren1Click(Sender: TObject); begin
SynEdit1.CopyToClipboard end;
procedure TForm2.Einfgen1Click(Sender: TObject); begin SynEdit1.PasteFromClipboard end;
procedure TForm2.Lschen1Click(Sender: TObject); begin SynEdit1.ClearSelection end;
procedure TForm2.Allesauswhlen1Click(Sender: TObject); begin SynEdit1.SelectAll end;
procedure TForm2.Nebeneinander1Click(Sender: TObject); begin Form1.Tile; end;
procedure TForm2.Hintereinander1Click(Sender: TObject); begin Form1.Cascade end;
procedure TForm2.Beenden1Click(Sender: TObject); begin Form1.Beenden2Click(Sender) end;
procedure TForm2.BitBtn4Click(Sender: TObject); Var Form: TForm4; Begin Form := TForm4.Create (nil); Try if ShowModal = mrOk Then Begin SynEdit1.SelText := 'Form.Edit2.Text'; End; Finally Form.Free; End; End;
procedure TForm2.Font1Click(Sender: TObject); begin FontDialog1.Execute; SynEdit1.Font := FontDialog1.Font; end;
procedure TForm2.BitBtn6Click(Sender: TObject); begin if pfad = StandardFileName then Speichernals1Click(Sender) else begin SynEdit1.Lines.SaveToFile(pfad); SynEdit1.Modified := False end end;
procedure TForm2.BitBtn5Click(Sender: TObject); begin SynEditPrint1.Lines := SynEdit1.Lines; SynEditPrint1.Wrap := true; SynEditPrint1.Print; end;
procedure TForm2.BitBtn1Click(Sender: TObject); begin SynEdit1.Undo end;
procedure TForm2.BitBtn2Click(Sender: TObject); begin SynEdit1.Redo end;
procedure TForm2.BitBtn3Click(Sender: TObject); begin close end;
procedure TForm2.Rckgngig1Click(Sender: TObject); begin SynEdit1.Undo end;
procedure TForm2.Wiederherstellen1Click(Sender: TObject); begin SynEdit1.Redo end;
procedure TForm2.headtag1Click(Sender: TObject); begin SynEdit1.SelText := '<html>'+#13#10+ '<head>'+#13#10+ '<title> Hier bitte den Namen der Seite eintragen </title>'+#13#10+ '</head>'+#13#10+ ''; end;
procedure TForm2.bodytag1Click(Sender: TObject); begin SynEdit1.SelText := '<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">' +#13#10+ ''+#13#10+ ''+#13#10+ ''+#13#10+ ''+#13#10+ '</body>'+#13#10+ '</html>'; end;
procedure TForm2.title1Click(Sender: TObject); begin SynEdit1.SelText := '<p><a href="http://www.ihrlink.de">Linktext</a></p>'+#13#10+ ''; end;
procedure TForm2.Bild1Click(Sender: TObject); begin SynEdit1.SelText := '<p><img src="Bildname+.Dateiendung" width="" height="" border="0"></p>'+#13#10+ ''; end;
procedure TForm2.FormatierterText1Click(Sender: TObject); begin SynEdit1.SelText := '<p><font face="Arial" size="2">Hier den Text eingeben</font></p>'+#13#10+ ''; end;
procedure TForm2.Tabelle1Click(Sender: TObject); begin SynEdit1.SelText := '<table>'+#13#10+ '<tr><td width="200">Tabellentext</td><td width="200">Tabellentext</td></tr>'+#13#10+ '<tr><td width="200">Tabellentext</td><td width="200">Tabellentext</td></tr>'+#13#10+ '</table>'+#13#10+ ''; end;
procedure TForm2.HyperlinkBild1Click(Sender: TObject); begin SynEdit1.SelText := '<p><a href="http://www.ihrlink.de">'+ '<img src="Bildname+.Dateiendung" width="" height="" border="0"></a></p>'+#13#10+ ''; end;
procedure TForm2.AusschneidenStrgX1Click(Sender: TObject); begin SynEdit1.CutToClipboard end;
procedure TForm2.Drucken1Click(Sender: TObject); begin SynEditPrint1.Lines := SynEdit1.Lines; SynEditPrint1.Wrap := true; SynEditPrint1.Print; end;
procedure TForm2.Druckereinrichten1Click(Sender: TObject); begin PrinterSetupDialog1.Execute end;
procedure TForm2.BitBtn7Click(Sender: TObject); begin SynEdit1.CutToClipboard end;
procedure TForm2.BitBtn8Click(Sender: TObject); begin SynEdit1.CopyToClipboard end;
procedure TForm2.BitBtn9Click(Sender: TObject); begin SynEdit1.PasteFromClipboard end;
procedure TForm2.BitBtn10Click(Sender: TObject); begin SynEdit1.ClearSelection end;
procedure TForm2.HtmEditInfo1Click(Sender: TObject); begin Form3.Show end; end. |
Viele Grüße: Grolle
Moderiert von Tino: Code- durch Delphi-Tags ersetzt.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 18:37
Ach sorry, die Zeile 250 ist natürlich nicht richtig:
Unit2 250:
| { ... } if Form.ShowModal = mrOk Then |
Noch etwas: Benutze doch bitte die Delphi-Tags (nicht die Code-Tags) um Delphisourcecode in Deinen Postings speziel darzustellen. Danke!
Gruß
Tino
|
|
Grolle 
      
Beiträge: 95
Win XP, Win 7
Delphi 2010 Pro
|
Verfasst: Do 30.12.04 18:52
Hallo!
Vielen Dank erstmal. Klappt jetzt endlich...
| Zitat: | Noch etwas: Benutze doch bitte die Delphi-Tags (nicht die Code-Tags) um
Delphisourcecode in Deinen Postings speziel darzustellen. Danke! |
Wird gemacht!
Grolle
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 30.12.04 23:56
| Grolle hat folgendes geschrieben: | | Vielen Dank erstmal. Klappt jetzt endlich... |
Gut.
| Grolle hat folgendes geschrieben: | | Wird gemacht! |
Dann bin ich heute wohl erstmal Arbeitslos.
Gruß
Tino
|
|
|