mghelp
Goto Top

Email oder Homepage Link in cplusplus Messagebox

einfache Messagebox mit Email- oder Homepagelink.

Ich möchte ein Email- oder Homepagelink in eine Messagebox (Info Message) einfügen (wie im Bild).

Bekomme aber nur eine normale Textausgabe hin.

Wäre nett für ein Beispielcode, oder die Syntaxt dafür.


Danke für eine Hilfe.

c06e42abb344d938bea53507a90df24d-emailhplink

Content-Key: 37976

Url: https://administrator.de/contentid/37976

Printed on: April 19, 2024 at 20:04 o'clock

Member: Guenni
Guenni Aug 17, 2006 at 18:36:47 (UTC)
Goto Top
@mghelp

Hi,

in meinem "VisualC++-Buch" gibt es eine Beschreibung zur Erstellung eines Hilfesystems,
wie man es von Windows und Programmen kennt.

Dort wird ja auch mit Hyperlinks gearbeitet, und, was ich jetzt auf die Schnelle rausgelesen habe,
diese Hyperlinks können auch Internetadressen sein.

Hab' aber im Moment kein VC(und keine Zeit) zur Verfügung, um das Ganze mal praktisch umzusetzen.

Du könntest ja selber mal in diese Richtung suchen, vielleicht in einem Buch aus der Leihbibliothek,
in den nächsten Tagen besorg' ich mir leihweise VC und poste mal meine Ergebnisse.

Eventuell finde ich das Kapitel auch auf der Buch-CD und kann es dir dann zuschicken.

Gruß
Günni
Member: Biber
Biber Aug 17, 2006 at 20:43:47 (UTC)
Goto Top
Das würde mich wundern, Günni,

wenn eine normale MessageBox (=System.Windows.Forms.Messagebox) nun plötzlich etwas anders anzeigen könnte als normalen Text.
IMHO brauchst Du erstens ein LinkLabel-Control und musst zweitens eine eigene (Form-)Klasse aufmachen, die diese LinkLabels enthält.

Skizze:
   using System;
    using System.Drawing;
    using System.WinForms;
    public class mghelpsAboutBox : System.WinForms.Form {
    private System.WinForms.LinkLabel mghelplinkLabel1;  // Für die WebSite, die Mail und auf eine PDF-Datei....mehrere Links möglich.
....
... 

/* das LinkLabel-Control hat den ganzen Schnickschnick, den man/frau bei Hyperlinks braucht; 
   .Text, .Size, .LinkVisited, VisitedLinkColor und ActiveLinkColor.....etc...
    und vor allem einen Eventhandler namens .LinkClicked, der ausgelöst wird, sobald ein Klick auf den Hyperlink erfolgt.
    Dort ( in der Initialize_mghelpsAboutBox() ) kann dann so etwas rein wie:
*/
 ....
   mghelplinkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.mghelplinkLabel1_LinkClicked);

// oder auch so:   mghelplinkLabel1.LinkClicked += new System.EventHandler(mghelplinkLabel1_LinkClicked);

    .....

  ...
protected void mghelplinkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
//  oder auch private void  ...       ....., etwas unsauberer, aber funktionierend: ......, System.EventArgs e)
//	{
// bei einem Link:                   mghelplinkLabel1.LinkVisited = true;
// bei einem Link:                   System.Diagnostics.Process.Start(" http://www.mghelp.de"); 
//               }
    {
// Bei mehreren Links im LinkLabel: Welches war gemeint?
      mghelplinkLabel1.Links[mghelplinkLabel1.Links.IndexOf(e.Link)].Visited = true;
      System.Diagnostics.Process.Start(e.Link.LinkData.ToString());
    }
......

Ich würde mal auf den C#-Seiten nach LinkLabel-Controls stöbern.

Grüße
Biber
[Edit] Okay, ich habe es etwas zu drastisch dargestellt: ein normaler Button oder irgendein Control mit OnClick-Handler könnte auch einen Hyperlink aufnehmen, aber eine MessageBox kann das IMHO nicht.
[/Edit]
Member: Guenni
Guenni Aug 17, 2006 at 23:19:14 (UTC)
Goto Top
Hi Biber,

dass eine "MessageBox im klassischen Sinne" einen Hyperlink aufnehmen
bzw. darstellen kann/soll, glaub ich auch nicht, da bin ich einer Meinung mit dir.

Das im Thread angezeigte Bild ist, IMHO, auch keine MessageBox, sondern
ein Dialog(oder eine Dialog-Resource), der/die aufgerufen wird, wenn man im
Menü z.B. ?--> Info oder ?--> About us.. anklickt.

Meine Überlegung ging einfach dahin, wenn ich in solch einem Dialog ein
Hilfesystem mit Querverweisen zu anderen Dokumenten erstellen kann,
und ein Querverweis ist ja ein Hyperlink, warum sollte der nicht
zu einer Website führen können?

Grüße
Günni
Member: Biber
Biber Aug 18, 2006 at 00:45:19 (UTC)
Goto Top
@günni
Das im Thread angezeigte Bild ist, IMHO, auch keine MessageBox..
Auch da sind wir uns einig - aber ich denke, dass es irgendeine aus System.WinForms.Form abgeleitete selbst "erfundene" Klasse ist, die um das LinkLabel-Control angereichert wurde.

Aber ich warte mal mit auf das Sourcecode-Beispiel...

Gruß
Biber
Member: mghelp
mghelp Aug 18, 2006 at 12:54:03 (UTC)
Goto Top
ich danke euch für eine Hilfe, aber ich arbeite mit cplus plus wie oben Beschrieben.

face-smile Gruß mgehelp