Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Подскажите пожалуйста как сделать чтобы при нажатии кнопки появлялся объект(например panel) в определенной точке

47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
Подскажите пожалуйста как сделать чтобы при нажатии кнопки появлялся объект(например panel) в определенной точке
40K
28 июня 2012 года
D129
228 / / 18.04.2012
Код:
Public Class Form1

    Private Sub Form1_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseClick
        Dim panelToAdd As New Panel
        panelToAdd.BackColor = Color.Aqua
        panelToAdd.Width = 20
        panelToAdd.Height = 20
        panelToAdd.BorderStyle = BorderStyle.Fixed3D

        panelToAdd.Top = e.Location.Y
        panelToAdd.Left = e.Location.X

        Me.Controls.Add(panelToAdd)



    End Sub
End Class
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
Спасибо все работает) но я чуток не правильно выразился) при нажатии кнопки на форме button1 например)
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
пытался щас поставиьт под кнопку но выдает ошибку Ошибка 2 "Location" не является членом "System.EventArgs".
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
во сделал)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
ListBox1.Items.Add(TextBox1.Text)
Dim panelToAdd As New Panel
panelToAdd.BackColor = Color.Aqua
panelToAdd.Width = 20
panelToAdd.Height = 20
panelToAdd.BorderStyle = BorderStyle.None
panelToAdd.Top = 100
panelToAdd.Left = 100
Me.Controls.Add(panelToAdd)
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
теперь вопрос, как сделать чтобы их передвигать можно было?)
20K
28 июня 2012 года
ellor!
198 / / 24.05.2012
Этот вопрос уже задавался в текущем разделе форума, причём вами же.
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
не там были панели которые уже были на форме, а тут которые создаются уже во время работы в нем
как я понял они будут иметь имена panelToAdd1, panelToAdd2, panelToAdd3 ..... и т.д
как мне сделать чтобы эти панели кортые будут создаваться во время работы тоже можно было передвигать
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
если сразу их прописать код панелей которые будут созданы то говорит что таких объектов на форме не обнаружено...
-можно как то их сделать типа "спящими") чтобы они врубались только когда появляется объект с соответствующим именем?
-или проще сделать чтобы они создавались и уже с этими свойствами и обрабатывать их создание?
47K
28 июня 2012 года
Rayrat7
99 / / 09.06.2012
Подскажите направление действий)
40K
28 июня 2012 года
D129
228 / / 18.04.2012
Цитата: Rayrat7
не там были панели которые уже были на форме, а тут которые создаются уже во время работы в нем
как я понял они будут иметь имена panelToAdd1, panelToAdd2, panelToAdd3 ..... и т.д
как мне сделать чтобы эти панели кортые будут создаваться во время работы тоже можно было передвигать



Ну при создании - подписать их на эвент MouseMove. Имя им давать при этом не обязательно и даже вредно.

Они же будут приходить в этот обработчик как sender - этой ссылкой на обьект и надо пользоваться - с помощью приведения типов.


Только не заставляйте меня искать как в вибишном синтаксисе делать подписку на эвент..... пожалейте мою седую глову....
:-(

:-)

40K
28 июня 2012 года
D129
228 / / 18.04.2012
Цитата: Rayrat7
Подскажите направление действий)



Вам нужно писать UserContol.
Панелька должна показывать номер вагончика ? Должна!

В UserContol вы можете поместить и панельку, и Label, и вывести "наружу" (в виби это "Shared" ) свойство Label.Text - это позволит вам показать разный текст на каждом квадратике, при минимуме кода.

40K
28 июня 2012 года
D129
228 / / 18.04.2012
Цитата: Rayrat7
Подскажите направление действий)


И в догонку - вот как сделаете этот проэкт на виби, так больше и не начинайте -
только шарп.
На нем все эти же вещи делать проще.
На виби просто - посчитать чего-нибудь по быстрому. Не надо особо понимать, что такое ссылка, обьект....
Но когда доходит до (а у вас уже дошло) - начинаются извращения. Виби ведь язык без стандарта, чего хотели, то и наворотили.

То есть, выбор правильного инструмента.
Простая формочка с табличкой и кнопочкой - ок, виби ....
Но вы уже управляете системой контролов, динамически их создаете....

277
28 июня 2012 года
arrjj
1.7K / / 26.01.2011
Вот на C++ пример как привязывать вагончики к линиям. Несмотря на то что на плюсах думаю сам алгоритм будет понятен.
Исходники в атаче.
Собранный пример: http://depositfiles.com/files/iy3b12nua (тут лимит на 2мб для атача)
Прикрепленные файлы:
3 Кб
Загрузок: 713
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог