Titelleiste-Nachbau und Button aktivieren, nach Eingabe

sNiff3ls

Grünschnabel
Servus Forumbesucher,

ich arbeite erst seit kurzem mit Visual Basic .NET, um genau zu sein mit VB .NET 2005 Express Edition. Nun habe ich vor die Titelleiste (heisst die so?) nachzubauen, sodass ich die Form verschieben, minimieren, maximieren etc. kann. Jedoch weiss ich nicht wie ich das anstellen soll.
Desweiteren weiss ich auch nicht wie ich es machen soll, dass eine Piturebox ein anderes Image bekommt, solbald in Textbox1 und Textbox2 ein Text steht.

Ich hoffe ihr versteht was ich meine.
Im vorraus schonmal vielen Dank für eure Hilfe.

Mfg sNiff3ls
 
Servus Forumbesucher,

ich arbeite erst seit kurzem mit Visual Basic .NET, um genau zu sein mit VB .NET 2005 Express Edition. Nun habe ich vor die Titelleiste (heisst die so?) nachzubauen, sodass ich die Form verschieben, minimieren, maximieren etc. kann. Jedoch weiss ich nicht wie ich das anstellen soll.

Wozu denn das? Es gibt doch schon eine Titelleiste (Was genau meinst du damit)?

Desweiteren weiss ich auch nicht wie ich es machen soll, dass eine Piturebox ein anderes Image bekommt, solbald in Textbox1 und Textbox2 ein Text steht.

Was für ein Text? (muss ein bestimmter Text in den textBoxen stehen), welches Bild? Soll es vom Anwender frei wählbar sein oder fix vorgegeben werden?

Ich hoffe du kannst etwas genauere Infos geben, denn sonst ist es sehr allgemein gehalten.

Gruß
Rudolf Grauberger
 
Servus,

ich bin mir bewusst, dass es bereits eine Titelleiste gibt, diese habe ich jedoch ausgeblendet weil ich ein eigenes Design 'basteln' will. (Wie zum Beispiel bei Steam)

Zu der Frage mit der PictureBox:
Die PictureBox dient hierbei als Button.
In der txtbox1 soll man den Benutzernamen eingeben können und in txtbox2 das Passwort, jedoch soll der Button erst benutzt werden können, sobald in beiden txtboxen etwas eingegeben wurde (egal was).
Um dem User zu signalisieren dass er den Butten ( die PictureBox) nun auch benutzen kann soll ein anderes Image Erscheinen.
Mein Problem hierbei ist nur, dass ich nicht weiss wie ich das anstellen soll, ohne einen extra Button zu verwenden der Überprüft ob etwas eingegeben wurde.

edit: Das Minimieren und Maximieren habe ich schon hinbekommen, ich weiss nur nicht wie das mit dem verschieben geht.

Mit freundlichen Grüßen
sNiff3ls
 
Zuletzt bearbeitet:
Tausch doch einfach das Bild der PictureBox aus, indem du es entweder aus einer Ressource deines Programms oder vom Dateisystem liest.

edit: das Aktivieren deines PictureBoxButton erledigst du am besten, wenn die die TextChange Events deiner Testboxen abfragst und dabei prüfst, ob Text eingegeben wurde...
 
Zuletzt bearbeitet:
Vielen Dank für den Tipp mit Textchange. Die "Aktivierung der Buttons" habe ich nun gelöst, doch leider besteht das Problem mit der Titelleiste immernoch. (Habe schon mehrere "Codeschnipsel" gefunden, von denen mir jedoch keines weiterhelfen konnte.

Mit freundlichen Grüßen
sNiff3ls
 
Ich hab leider gerade kein Visual Studio zur Hand aber ich versuchs trotzdem

Du definierst in deinem Formular die Variablen

Code:
bool isMoving = false;
int x = 0;
int y = 0;

Im Event Myform_MouseDown

Code:
isMoving = true;

Im Event Myform_MouseUp

Code:
isMoving = true;
x = e.X;
y = e.Y;


Und zu guter letzt bei MouseMove

Code:
if (isMoving && e.Button == MouseButtons.Left)
{
   this.Location = newPoint(this.Location.X + (e.X - x), this.Location.Y + (e.Y - y));
}


Jetzt sollte sich das Form eigentlich verschieben lassen.

Dann erstellst du noch je einen Button für maximieren, minimieren,...
Bei Button_Click dann nur noch
Code:
this.WindowState = FormWindowState.Maximized;


Das sollte es dann eigentlich gewesen sein. Ich hoffe dass ich jetzt in der Eile nichts vergessen habe und auch an alles gedacht hab.

lg Martin
 
Zurück