Benutzer mit den meisten Antworten
Gegenseitige Sichtbarkeit von "Nebenklassen" (verwandte Klassen) mit VC++ Express 2008 (1 eingebundene .h Datei)

Frage
-
Hallo,
Nach der Namespace Zusammenfassung zeigt es zB. zwei "Nebenklassen"(miteinander verwandte Klassen) graphisch an, selbe lassen sich auch jeweils auswaehlen, doch es kommt immer die Fehlermeldung:
"Form1"(KLasse): Das Symbol links neben "::" muss ein Typ sein."
"'listBox1': Ist kein Element von 'Bildbetrachter01'(=namespace)"
Vielen Dank im voraus AAAFFF
- Bearbeitet Robert BreitenhoferModerator Dienstag, 30. März 2010 15:22 Formatierung
- Verschoben Martin RichterModerator Freitag, 4. Juni 2010 16:02 (aus:Visual C++)
Dienstag, 30. März 2010 14:39
Antworten
-
http://social.msdn.microsoft.com/Forums/de-DE/vcplusexpresseditionde/thread/5f2dfc2c-7d10-486e-b245-480f485dbf8f
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort markiert Martin RichterModerator Montag, 5. Dezember 2011 14:06
Montag, 5. Dezember 2011 14:06Moderator
Alle Antworten
-
Hallo AAAFFF!
> "Form1"(KLasse): Das Symbol links neben "::" muss ein Typ sein."
Du hast einen Programmierfehler...
Lies bitte das hier:
http://blog.kalmbach-software.de/de/2010/03/05/ccli-und-winforms-macht-keinen-sinn/
Wenn Du wirklich C++/CLI weiter machen willst, dann musst Du zuerst mal
die Grundlagen lernen... und wenn wir bei diesem Problem weiterhelfen
sollen, so musst Du uns den Code zeigen, den Du verwendet hast...
Jochen Kalmbach (MVP VC++)- Bearbeitet Robert BreitenhoferModerator Mittwoch, 31. März 2010 08:31 Hyperlink als Hyperlink
Dienstag, 30. März 2010 15:58 -
/*Ein Bildbetrachter(copyrighted) wo ich gerne einige Zusatzfunktionalitaeten implementieren moechte, DIES IST DIE formMax.h
von selber geht nicht auf "Form1 zuzugreifen" */
#pragma once/*NICHT WEGLASSEN DAS IST WICHTIG SONST BRINGT ER UNMASSEN VON FEHLERMELDUNGEN */
///////////#include "Form1.h"
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;namespace Bildbetrachter01 {
/// <summary>
/// Zusammenfassung für formMax
///
/// Warnung: Wenn Sie den Namen dieser Klasse ändern, müssen Sie auch
/// die Ressourcendateiname-Eigenschaft für das Tool zur Kompilierung verwalteter Ressourcen ändern,
/// das allen RESX-Dateien zugewiesen ist, von denen diese Klasse abhängt.
/// Anderenfalls können die Designer nicht korrekt mit den lokalisierten Ressourcen
/// arbeiten, die diesem Formular zugewiesen sind.
/// </summary>
public ref class formMax : public System::Windows::Forms::Form
{
formMax ^fensterBilderschau;//selber hinzugefuegter Code(Handle auf "formMax")
public:
formMax(void)
{
InitializeComponent();
//
//TODO: Konstruktorcode hier hinzufügen.
//}
public:Void bildLaden(String ^bildname)
{
pictureBoxFormMax->Load(bildname);
}protected:
/// <summary>
/// Verwendete Ressourcen bereinigen.
/// </summary>
~formMax()
{
if (components)
{
delete components;
}
}
private: System::Windows::Forms::PictureBox^ pictureBoxFormMax;
public: System::Windows::Forms::Timer^ timer1;
private: System::ComponentModel::IContainer^ components;
public: System::Windows::Forms::ListBox^ listBox1;
public: System::Windows::Forms::Button^ buttonStarten;protected:
protected:
private:
/// <summary>
/// Erforderliche Designervariable.
/// </summary>
#pragma region Windows Form Designer generated code
/// <summary>
/// Erforderliche Methode für die Designerunterstützung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
/// </summary>
void InitializeComponent(void)
{
//nachfolgender 1.ter Satz selber hinzugefuegt(aus Form1.h):
this->listBox1 = (gcnew System::Windows::Forms::ListBox());
this->components = (gcnew System::ComponentModel::Container());
this->pictureBoxFormMax = (gcnew System::Windows::Forms::PictureBox());
this->timer1 = (gcnew System::Windows::Forms::Timer(this->components));
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->pictureBoxFormMax))->BeginInit();
this->SuspendLayout();
//
// pictureBoxFormMax
//
this->pictureBoxFormMax->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
| System::Windows::Forms::AnchorStyles::Left)
| System::Windows::Forms::AnchorStyles::Right));
this->pictureBoxFormMax->Location = System::Drawing::Point(0, 0);
this->pictureBoxFormMax->Name = L"pictureBoxFormMax";
this->pictureBoxFormMax->Size = System::Drawing::Size(400, 292);
this->pictureBoxFormMax->SizeMode = System::Windows::Forms::PictureBoxSizeMode::Zoom;
this->pictureBoxFormMax->TabIndex = 0;
this->pictureBoxFormMax->TabStop = false;
this->pictureBoxFormMax->MouseDoubleClick += gcnew System::Windows::Forms::MouseEventHandler(this, &formMax::pictureBoxFormMax_MouseDoubleClick);
this->pictureBoxFormMax->MouseClick += gcnew System::Windows::Forms::MouseEventHandler(this, &formMax::pictureBoxFormMax_MouseClick);
//
// timer1
//
this->timer1->Interval = 5000;
//
// formMax
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(400, 291);
this->Controls->Add(this->pictureBoxFormMax);
this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::FixedSingle;
this->Location = System::Drawing::Point(349, 52);
this->MaximizeBox = false;
this->MinimizeBox = false;
this->Name = L"formMax";
this->Text = L"Starten";
this->TopMost = true;
this->WindowState = System::Windows::Forms::FormWindowState::Maximized;
this->Load += gcnew System::EventHandler(this, &formMax::formMax_Load);
this->Click += gcnew System::EventHandler(this, &formMax::buttonStarten_Click);
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->pictureBoxFormMax))->EndInit();
this->ResumeLayout(false);
/* //
// buttonStarten
//
this->buttonStarten->Location = System::Drawing::Point(349, 53);
this->buttonStarten->Name = L"buttonStarten";
this->buttonStarten->Size = System::Drawing::Size(75, 23);
this->buttonStarten->TabIndex = 4;
this->buttonStarten->Text = L"Starten";
//this->buttonStarten->Click += gcnew System::Windows::Forms::MouseEventHandler(this, &formMax::buttonStarten_Click);
*/
}#pragma endregion
private: System::Void formMax_Load(System::Object^ sender, System::EventArgs^ e)
{
}
public: System::Void pictureBoxFormMax_MouseClick(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e)
{
MessageBox::Show("Test","Test");
//ein neues Fenster fuer die Bilderschau erzeugen
///fensterBilderschau = gcnew formMax;
fensterBilderschau->timer1_Tick(sender,e);
}
public: System::Void pictureBoxFormMax_MouseDoubleClick(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e)
{
//MessageBox::Show("Test","Test");
}//////////////////////////////////////////////////////////////////////////////////////////
public: System::Void timer1_Tick(System::Object^ sender, System::EventArgs^ e)
{
MessageBox::Show("innerhalb FormMax Objekt ruft das aufs Bild klicken timer1_Tick an","Test");if (/*Bildbetrachter01::Form1::*/listBox1->SelectedIndex < listBox1->Items->Count -1)
{
//den naechsten Eintrag markieren
listBox1->SelectedIndex++;//und das Bild laden
fensterBilderschau->bildLaden( listBox1->SelectedItem->ToString());
//Einen Sound aus der Systemsteuerung abspielen
System::Media::SystemSounds::Asterisk->Play();
}
else
{
//die Markierungen loeschen
listBox1->SelectedIndex = -1;
//den Timer anhalten
timer1->Stop();//das Fenster Bilderschau schliessen
fensterBilderschau->Close();
}
}//*****************************************************************************************
public: System::Void buttonStarten_Click(System::Object^ sender, System::EventArgs^ e)
{MessageBox::Show("Diesen ruft er an","Test");
//Befinden sich ueberhaupt Eintraege in der Liste?
//Wenn nicht, erzeugen wir eine Meldung und verlassen die Methode wieder
if ( listBox1->Items->Count == 0 )
{
MessageBox::Show("Sie müssen erst Dateien auswählen!","Fehler");
return;
}
//ist kein Eintrag im Listenfeld markiert?
//dann den ersten Eintrag markieren
if ( listBox1->SelectedIndex == -1 )
{
listBox1->SelectedIndex = 0;
}//ein neues Fenster fuer die Bilderschau erzeugen
fensterBilderschau = gcnew formMax;//das erste Bild laden
fensterBilderschau->bildLaden( listBox1->SelectedItem->ToString());//den Titel des Formulars auf "Bilderschau" setzen
fensterBilderschau->Text = "Agstner Florian's Bilderschau";//naechste 2 Zeilen sind neu:
//Das Systemmenue und das Schliessen-Symbol ausblenden
fensterBilderschau->ControlBox = false;//das Formular anzeigen
fensterBilderschau->Show();//nach anklicken von Button "Start" den Timer starten
timer1->Start();}
//*****************************************************************************************
///////////Ende "formMax"///////////////////////////////////////////////////////////////////////////////
};
}//-------------------------------------------------------------------------
#pragma once#include "formMax.h"
namespace Bildbetrachter01 {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;/// <summary>
/// Zusammenfassung für Form1
///
/// Warnung: Wenn Sie den Namen dieser Klasse ändern, müssen Sie auch
/// die Ressourcendateiname-Eigenschaft für das Tool zur Kompilierung verwalteter Ressourcen ändern,
/// das allen RESX-Dateien zugewiesen ist, von denen diese Klasse abhängt.
/// Anderenfalls können die Designer nicht korrekt mit den lokalisierten Ressourcen
/// arbeiten, die diesem Formular zugewiesen sind.
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
formMax ^fensterBilderschau;//selber hinzugefuegter Code(Handle auf "formMax")
Bildbetrachter01::Form1 ^form1Test;public:
Form1(void)
{
InitializeComponent();
//
//TODO: Konstruktorcode hier hinzufügen.
//
}protected:
/// <summary>
/// Verwendete Ressourcen bereinigen.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
private: System::Windows::Forms::TabControl^ tabControl1;
private: System::Windows::Forms::TabPage^ tabPageEinzel;
protected:private: System::Windows::Forms::TabPage^ tabPageSchau;
private: System::Windows::Forms::Button^ buttonBeenden;private: System::Windows::Forms::Button^ buttonOeffnen;
private: System::Windows::Forms::Button^ buttonAnzeigen;
private: System::Windows::Forms::TextBox^ textBoxDateiAuswahl;private: System::Windows::Forms::CheckBox^ checkBoxNeuesFenster;
private: System::Windows::Forms::CheckBox^ checkBoxOptimaleGroesse;
private: System::Windows::Forms::PictureBox^ pictureBox1;
private: System::Windows::Forms::OpenFileDialog^ openFileDialog1;
private: System::Windows::Forms::Button^ buttonBeenden1;private: System::Windows::Forms::Button^ buttonStarten;
private: System::Windows::Forms::Button^ buttonAuswaehlen;
//hier befand sich das Handle listBox
public: System::Windows::Forms::ListBox^ listBox1;
private: System::Windows::Forms::OpenFileDialog^ openFileDialog2;private: System::ComponentModel::IContainer^ components;
private:
/// <summary>
/// Erforderliche Designervariable.
/// </summary>
#pragma region Windows Form Designer generated code
/// <summary>
/// Erforderliche Methode für die Designerunterstützung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
/// </summary>
void InitializeComponent(void)
{
this->tabControl1 = (gcnew System::Windows::Forms::TabControl());
this->tabPageEinzel = (gcnew System::Windows::Forms::TabPage());
this->pictureBox1 = (gcnew System::Windows::Forms::PictureBox());
this->checkBoxNeuesFenster = (gcnew System::Windows::Forms::CheckBox());
this->checkBoxOptimaleGroesse = (gcnew System::Windows::Forms::CheckBox());
this->textBoxDateiAuswahl = (gcnew System::Windows::Forms::TextBox());
this->buttonBeenden = (gcnew System::Windows::Forms::Button());
this->buttonOeffnen = (gcnew System::Windows::Forms::Button());
this->buttonAnzeigen = (gcnew System::Windows::Forms::Button());
this->tabPageSchau = (gcnew System::Windows::Forms::TabPage());
this->buttonBeenden1 = (gcnew System::Windows::Forms::Button());
this->buttonStarten = (gcnew System::Windows::Forms::Button());
this->buttonAuswaehlen = (gcnew System::Windows::Forms::Button());
this->listBox1 = (gcnew System::Windows::Forms::ListBox());
this->openFileDialog1 = (gcnew System::Windows::Forms::OpenFileDialog());
this->openFileDialog2 = (gcnew System::Windows::Forms::OpenFileDialog());
this->tabControl1->SuspendLayout();
this->tabPageEinzel->SuspendLayout();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->pictureBox1))->BeginInit();
this->tabPageSchau->SuspendLayout();
this->SuspendLayout();
//
// tabControl1
//
this->tabControl1->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
| System::Windows::Forms::AnchorStyles::Left)
| System::Windows::Forms::AnchorStyles::Right));
this->tabControl1->Controls->Add(this->tabPageEinzel);
this->tabControl1->Controls->Add(this->tabPageSchau);
this->tabControl1->Location = System::Drawing::Point(0, 0);
this->tabControl1->Name = L"tabControl1";
this->tabControl1->SelectedIndex = 0;
this->tabControl1->Size = System::Drawing::Size(440, 380);
this->tabControl1->TabIndex = 0;
this->tabControl1->Enter += gcnew System::EventHandler(this, &Form1::tabControl1_Enter);
//
// tabPageEinzel
//
this->tabPageEinzel->Controls->Add(this->pictureBox1);
this->tabPageEinzel->Controls->Add(this->checkBoxNeuesFenster);
this->tabPageEinzel->Controls->Add(this->checkBoxOptimaleGroesse);
this->tabPageEinzel->Controls->Add(this->textBoxDateiAuswahl);
this->tabPageEinzel->Controls->Add(this->buttonBeenden);
this->tabPageEinzel->Controls->Add(this->buttonOeffnen);
this->tabPageEinzel->Controls->Add(this->buttonAnzeigen);
this->tabPageEinzel->Location = System::Drawing::Point(4, 22);
this->tabPageEinzel->Name = L"tabPageEinzel";
this->tabPageEinzel->Padding = System::Windows::Forms::Padding(3);
this->tabPageEinzel->Size = System::Drawing::Size(432, 354);
this->tabPageEinzel->TabIndex = 0;
this->tabPageEinzel->Text = L"Einzelbild";
this->tabPageEinzel->UseVisualStyleBackColor = true;
this->tabPageEinzel->Enter += gcnew System::EventHandler(this, &Form1::tabPageEinzel_Enter);
//
// pictureBox1
//
this->pictureBox1->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
| System::Windows::Forms::AnchorStyles::Left)
| System::Windows::Forms::AnchorStyles::Right));
this->pictureBox1->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D;
this->pictureBox1->Location = System::Drawing::Point(3, 6);
this->pictureBox1->Name = L"pictureBox1";
this->pictureBox1->Size = System::Drawing::Size(337, 291);
this->pictureBox1->TabIndex = 6;
this->pictureBox1->TabStop = false;
//
// checkBoxNeuesFenster
//
this->checkBoxNeuesFenster->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Bottom | System::Windows::Forms::AnchorStyles::Left));
this->checkBoxNeuesFenster->AutoSize = true;
this->checkBoxNeuesFenster->Location = System::Drawing::Point(254, 329);
this->checkBoxNeuesFenster->Name = L"checkBoxNeuesFenster";
this->checkBoxNeuesFenster->Size = System::Drawing::Size(95, 17);
this->checkBoxNeuesFenster->TabIndex = 5;
this->checkBoxNeuesFenster->Text = L"Neues Fenster";
this->checkBoxNeuesFenster->UseVisualStyleBackColor = true;
//
// checkBoxOptimaleGroesse
//
this->checkBoxOptimaleGroesse->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Bottom | System::Windows::Forms::AnchorStyles::Left));
this->checkBoxOptimaleGroesse->AutoSize = true;
this->checkBoxOptimaleGroesse->Location = System::Drawing::Point(8, 329);
this->checkBoxOptimaleGroesse->Name = L"checkBoxOptimaleGroesse";
this->checkBoxOptimaleGroesse->Size = System::Drawing::Size(99, 17);
this->checkBoxOptimaleGroesse->TabIndex = 4;
this->checkBoxOptimaleGroesse->Text = L"Optimale Größe";
this->checkBoxOptimaleGroesse->UseVisualStyleBackColor = true;
this->checkBoxOptimaleGroesse->CheckedChanged += gcnew System::EventHandler(this, &Form1::checkBoxOptimaleGroesse_CheckedChanged);
//
// textBoxDateiAuswahl
//
this->textBoxDateiAuswahl->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Bottom | System::Windows::Forms::AnchorStyles::Left));
this->textBoxDateiAuswahl->Location = System::Drawing::Point(8, 303);
this->textBoxDateiAuswahl->Name = L"textBoxDateiAuswahl";
this->textBoxDateiAuswahl->Size = System::Drawing::Size(416, 20);
this->textBoxDateiAuswahl->TabIndex = 3;
//
// buttonBeenden
//
this->buttonBeenden->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Right));
this->buttonBeenden->Location = System::Drawing::Point(346, 117);
this->buttonBeenden->Name = L"buttonBeenden";
this->buttonBeenden->Size = System::Drawing::Size(75, 23);
this->buttonBeenden->TabIndex = 2;
this->buttonBeenden->Text = L"Beenden";
this->buttonBeenden->UseVisualStyleBackColor = true;
this->buttonBeenden->Click += gcnew System::EventHandler(this, &Form1::buttonBeenden_Click);
//
// buttonOeffnen
//
this->buttonOeffnen->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Right));
this->buttonOeffnen->Location = System::Drawing::Point(346, 71);
this->buttonOeffnen->Name = L"buttonOeffnen";
this->buttonOeffnen->Size = System::Drawing::Size(75, 23);
this->buttonOeffnen->TabIndex = 1;
this->buttonOeffnen->Text = L"Öffnen";
this->buttonOeffnen->UseVisualStyleBackColor = true;
this->buttonOeffnen->Click += gcnew System::EventHandler(this, &Form1::buttonOeffnen_Click);
//
// buttonAnzeigen
//
this->buttonAnzeigen->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Right));
this->buttonAnzeigen->Location = System::Drawing::Point(346, 23);
this->buttonAnzeigen->Name = L"buttonAnzeigen";
this->buttonAnzeigen->Size = System::Drawing::Size(75, 23);
this->buttonAnzeigen->TabIndex = 0;
this->buttonAnzeigen->Text = L"Anzeigen";
this->buttonAnzeigen->UseVisualStyleBackColor = true;
this->buttonAnzeigen->Click += gcnew System::EventHandler(this, &Form1::buttonAnzeigen_Click);
//
// tabPageSchau
//
this->tabPageSchau->Controls->Add(this->buttonBeenden1);
this->tabPageSchau->Controls->Add(this->buttonStarten);
this->tabPageSchau->Controls->Add(this->buttonAuswaehlen);
this->tabPageSchau->Controls->Add(this->listBox1);
this->tabPageSchau->Location = System::Drawing::Point(4, 22);
this->tabPageSchau->Name = L"tabPageSchau";
this->tabPageSchau->Padding = System::Windows::Forms::Padding(3);
this->tabPageSchau->Size = System::Drawing::Size(432, 354);
this->tabPageSchau->TabIndex = 1;
this->tabPageSchau->Text = L"Bilderschau";
this->tabPageSchau->UseVisualStyleBackColor = true;
this->tabPageSchau->Enter += gcnew System::EventHandler(this, &Form1::tabPageSchau_Enter);
//
// buttonBeenden1
//
this->buttonBeenden1->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Right));
this->buttonBeenden1->Location = System::Drawing::Point(349, 99);
this->buttonBeenden1->Name = L"buttonBeenden1";
this->buttonBeenden1->Size = System::Drawing::Size(75, 23);
this->buttonBeenden1->TabIndex = 3;
this->buttonBeenden1->Text = L"Beenden";
this->buttonBeenden1->UseVisualStyleBackColor = true;
this->buttonBeenden1->Click += gcnew System::EventHandler(this, &Form1::buttonBeenden_Click);
//
// buttonStarten
//
this->buttonStarten->Location = System::Drawing::Point(349, 53);
this->buttonStarten->Name = L"buttonStarten";
this->buttonStarten->Size = System::Drawing::Size(75, 23);
this->buttonStarten->TabIndex = 4;
this->buttonStarten->Text = L"Starten";
this->buttonStarten->MouseClick += gcnew System::Windows::Forms::MouseEventHandler(this, &Form1::buttonStarten_MouseClick);
//
// buttonAuswaehlen
//
this->buttonAuswaehlen->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Right));
this->buttonAuswaehlen->Location = System::Drawing::Point(349, 6);
this->buttonAuswaehlen->Name = L"buttonAuswaehlen";
this->buttonAuswaehlen->Size = System::Drawing::Size(75, 23);
this->buttonAuswaehlen->TabIndex = 1;
this->buttonAuswaehlen->Text = L"Auswählen";
this->buttonAuswaehlen->UseVisualStyleBackColor = true;
this->buttonAuswaehlen->Click += gcnew System::EventHandler(this, &Form1::buttonAuswaehlen_Click);
//
// listBox1
//
this->listBox1->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
| System::Windows::Forms::AnchorStyles::Left)
| System::Windows::Forms::AnchorStyles::Right));
this->listBox1->FormattingEnabled = true;
this->listBox1->Location = System::Drawing::Point(8, 6);
this->listBox1->Name = L"listBox1";
this->listBox1->Size = System::Drawing::Size(335, 251);
this->listBox1->TabIndex = 0;
//
// openFileDialog1
//
this->openFileDialog1->Filter = L"Graphikdateien| *.bmp;*.gif;*.jpg;*.png;*.tif;*.wmf";
this->openFileDialog1->FileOk += gcnew System::ComponentModel::CancelEventHandler(this, &Form1::openFileDialog1_FileOk);
//
// openFileDialog2
//
this->openFileDialog2->Filter = L"Graphikdateien| *.bmp;*.gif;*.jpg;*.png;*.tif;*.wmf";
this->openFileDialog2->Multiselect = true;
this->openFileDialog2->FileOk += gcnew System::ComponentModel::CancelEventHandler(this, &Form1::openFileDialog2_FileOk);
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(440, 380);
this->Controls->Add(this->tabControl1);
this->Name = L"Form1";
this->Text = L"Agstner Florian\'s Bildbetrachter";
this->WindowState = System::Windows::Forms::FormWindowState::Maximized;
this->tabControl1->ResumeLayout(false);
this->tabPageEinzel->ResumeLayout(false);
this->tabPageEinzel->PerformLayout();
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->pictureBox1))->EndInit();
this->tabPageSchau->ResumeLayout(false);
this->ResumeLayout(false);}
#pragma endregion
private: System::Void buttonBeenden_Click(System::Object^ sender, System::EventArgs^ e)
{Close();
}
private: System::Void buttonAnzeigen_Click(System::Object^ sender, System::EventArgs^ e)
{
if (textBoxDateiAuswahl->Text != String::Empty)
{
//existiert die Datei ueberhaupt?
if (IO::File::Exists(textBoxDateiAuswahl->Text))
{
//soll die Datei in einem neuen Fenster angezeigt werden?
if ( checkBoxNeuesFenster->Checked )
{
//das neue Formular ERZEUGEN (gcnew bzw. auf Heap)
formMax ^neuesFormular = gcnew formMax;
//das Formular "modal" anzeigen//2tes Formular:
neuesFormular->bildLaden(textBoxDateiAuswahl->Text);neuesFormular->ShowDialog();
//Das Bild in die PictureBox im zweiten Formular laden
/////////neuesFormular->pictureBoxFormMax->Load(textBoxDateiAuswahl->Text);
//das Formular modal anzeigen
/////////neuesFormular->ShowDialog();
}
else
{
//( wenn ja, dann laden und anzeigen
pictureBox1->Load(textBoxDateiAuswahl->Text);
}
}
else
{
MessageBox::Show("Die Datei existiert nicht!", "Fehler", MessageBoxButtons::OK, MessageBoxIcon::Error);
}
}
}
private: System::Void checkBoxOptimaleGroesse_CheckedChanged(System::Object^ sender, System::EventArgs^ e)
{
if ( checkBoxOptimaleGroesse->Checked )
{
pictureBox1->SizeMode = PictureBoxSizeMode::Zoom;
}
else
{
pictureBox1->SizeMode = PictureBoxSizeMode::Normal;
}
}
private: System::Void buttonOeffnen_Click(System::Object^ sender, System::EventArgs^ e)
{openFileDialog1->ShowDialog();
}
private: System::Void openFileDialog1_FileOk(System::Object^ sender, System::ComponentModel::CancelEventArgs^ e)
{//Den Namen der ausgewaehlten Datei in das Eingabefeld schreiben
textBoxDateiAuswahl->Text = openFileDialog1->FileName;
//Die eigene Methode 'buttonAnzeigen_Click' aufrufen
buttonAnzeigen_Click(sender, e);
}
private: System::Void buttonAuswaehlen_Click(System::Object^ sender, System::EventArgs^ e)
{openFileDialog2->ShowDialog();
}
private: System::Void openFileDialog2_FileOk(System::Object^ sender, System::ComponentModel::CancelEventArgs^ e)
{
//Ein neues Array fuer den Typ String anlegen und die markierten Namen kopieren
array <String^> ^dateien = openFileDialog2->FileNames;//Wenn sich noch Eintraege in dem Feld befinden, loeschen wir sie
if ( listBox1->Items->Count != 0 )
{
listBox1->Items->Clear();
}//die Namen in das Listenfeld kopieren
for each (String ^datei in dateien)
listBox1->Items->Add(datei);
}
//*****************************************************************************************public: System::Void buttonStarten_Click(System::Object^ sender, System::EventArgs^ e)
{
fensterBilderschau->buttonStarten_Click(sender, e);
}
private: System::Void tabControl1_Enter(System::Object^ sender, System::EventArgs^ e)
{
}
private: System::Void tabPageEinzel_Enter(System::Object^ sender, System::EventArgs^ e)
{
AcceptButton = buttonAnzeigen;
}
private: System::Void tabPageSchau_Enter(System::Object^ sender, System::EventArgs^ e)
{
AcceptButton = buttonStarten;
}
public: System::Void buttonStarten_MouseClick(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e)
{
//////////fensterBilderschau->buttonStarten_Click(sender, e);
//Befinden sich ueberhaupt Eintraege in der Liste?//Wenn nicht, erzeugen wir eine Meldung und verlassen die Methode wieder
if ( listBox1->Items->Count == 0 )
{
MessageBox::Show("Sie müssen erst Dateien auswählen!","Fehler");
return;
}
//ist kein Eintrag im Listenfeld markiert?
//dann den ersten Eintrag markieren
if ( listBox1->SelectedIndex == -1 )
{
listBox1->SelectedIndex = 0;
}////ein neues Fenster fuer die Bilderschau erzeugen
////ein neues Fenster fuer die Bilderschau erzeugen
fensterBilderschau = gcnew formMax;//das erste Bild laden
fensterBilderschau->bildLaden( listBox1->SelectedItem->ToString());//den Titel des Formulars auf "Bilderschau" setzen
fensterBilderschau->Text = "Agstner Florian's Bilderschau";//naechste 2 Zeilen sind neu:
//Das Systemmenue und das Schliessen-Symbol ausblenden
fensterBilderschau->ControlBox = false;//das Formular anzeigen
fensterBilderschau->Show();//nach anklicken von Button "Start" den Timer starten
/////////Bildbetrachter01::formMax::timer1->Start();
fensterBilderschau->timer1->Start();
}
};
}/* #pragma once
#include "formMax.h" *///================================================Ende====================
Mittwoch, 31. März 2010 14:32 -
Hallo Herr Kalmbach,
Ich habe 2 Klassen namens "formMax" und "Form1". formMax.h ist bei Form1.h includiert.
Beide besitzen einen uebergeordneten Namespace namens "Bildbetrachter01".
Auf alles was in "formMax" steht laesst sich zugreifen(zB. auf oeffentliche Methoden).
Von "formMax.h" aus laesst sich auf "Form1"-Inhalt(zB. Methoden) NICHT zugreifen.
Wenn ich in eine Methode von "formMax" Bildbetrachter01:: schreibe, tut sich ein
kleines Fenster mit 2 Optionen, naehmlich "Form1" und "formMax" graphisch angezeigt auf.
Warum funktioniert dies, doch zugreifen laesst sich auf zB. (oeffentliche) Methoden von
"Form1" trotzdem nicht?
Gruesse AAAFFF
Mittwoch, 31. März 2010 14:59 -
Hallo, Herr Kalmbach,
Haben Sie eine email-Adresse? Ich moechte gerne wissen, was Sie verlangen,
wenn Sie mir einen Ausweg zu dem besagten Problem zeigen!
Meine email Adresse ist jedenfalls Agstner@gmx.li
Gruesse Agstner, AAAFFF
Samstag, 3. April 2010 09:28 -
http://social.msdn.microsoft.com/Forums/de-DE/vcplusexpresseditionde/thread/5f2dfc2c-7d10-486e-b245-480f485dbf8f
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort markiert Martin RichterModerator Montag, 5. Dezember 2011 14:06
Montag, 5. Dezember 2011 14:06Moderator