Einzelnen Beitrag anzeigen

Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#6

Re: Icon aus Resource laden?

  Alt 9. Aug 2006, 14:25
Delphi oder C#?

Grundsätzlich unterscheiden sich Delphi und C# nicht entscheidend; Tipps für die eine Sprache können auch bei der anderen Sprache sehr gut helfen. Dumm nur, dass die Namen von Methoden zu ändern sind und man dann nicht weiß, nach welchem Stichwort man suchen soll...

Konkret:

Zitat von ChrisE:
Icon.LoadFromResourceName('DerName');
kann ersetzt werden durch:
Code:
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
//  so hat es der Compiler in InitializeComponent() eingetragen
Zitat von ChrisE:
wenn es nur ein Icon für alle Fenster gibt:
MyForm.Icon.LoadFromResourceName
Dazu habe ich bisher leider kein Pendant gefunden: Die Application-Klasse von NET ist etwas anderes als TApplication von Delphi; insbesondere wird das Application.Icon nicht bereitgestellt.

Aber du kannst Folgendes machen:

1. Irgendwo müssen WinForm1, WinForm2 und WinForm3 verknüpft sein, z.B. durch WinForm1.Button1_Click mit dem Aufruf von WinForm2.

2. Dort kannst Du das Icon "übergeben":
Code:
WinForm2.Icon = WinForm1.Icon;
Unter Delphi durfte das so keinesfalls gemacht werden, weil dabei nur ein Handle des Icons übertragen wird; und wenn WinForm2 aufgelöst wird, geht der Verweis auf das Icon von WinForm1 ins Nirwana. Aber unter NET sollte der GarbageCollector dies vernünftig kontrollieren.

Vielleicht helfen Dir diese Informationen weiter.
Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat