Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > простой вопрос по Visual C++


Автор: irjinn 13.1.2010, 16:02
Здравствуйте!

Использую Visual C++ 2008, только начал программировать,
возник следующий вопрос...

В форме определена (создается при загрузке) надпись label.
Имеет изначальное свойство
this->label_x0->Anchor = System::Windows::Forms::AnchorStyle s::None;

При нажатии на кнопку пытаюсь изменить месторасположение метки, делаю это так:
this->label_x0- >Location.X=x0_x;
this->label_x0->Location.Y=x0_y;

Результат отсутсвует, даже если потом пробую сделать апдейт формы 
this->Update();

Подскажите пожалуйста, как добиться перемещения метки?

Заранее благодарен.

Автор: 586 13.1.2010, 16:11
Код
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 label1->Left += 5;
                 label1->Top += 5;
             }

Автор: InvalidProperty 13.1.2010, 16:12
ИМХО, С++ .Net - ###. Используй либо чистый C++, либо C#, ежели так уж хочется .Net

Автор: irjinn 13.1.2010, 19:33
Подскажите пожалуйста, как в дочерней форме(не в главной) сделать следующее:
при нажатии на крестик  [х]  отменить уничтожение формы, а всего лишь изменить свойство Visible?

И еще, помогите пожалуйста, 
на форме рисую график функции, с помощью метода 
DrawGraph(), который использует следующий инструмент:
Код

Graphics im2=this->CreateGraphics();
im->DrawLine(pen2,X-1,Yprev,X,Y)


собственно вопрос - как сохранить  нарисованный график при ресайзе формы?
пробовал обрабатывать событие
Код

Form1_Resize(System::Object^  sender, System::EventArgs^  e)
         {
            this->DrawGraph();
         }

однако, график после ресайза появится на долю секунды и вновь исчезает
тот же самый результат, а вернее, его отсутсвие, при обработке события  ResizeEnd.

Подскажите пожалуйста, что делать.




Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)