Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перемещение эле-ов управления, Как уже в программе перемещать объекты 
:(
    Опции темы
neic
Дата 6.9.2008, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Вот занялся конструктором одним, хочу использовать компоненты, которые используются в VB6.

Вопрос: как можно передвигать элементы управления в уже запущенной программе?
Например: как в VB6 реализовано перетаскивание по форме различных объектов?

Просьба привести пример с Label.


PM MAIL WWW ICQ Skype   Вверх
I_Am_Rock
Дата 6.9.2008, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Вот... smile
Код

Public BarX
Public BarY

Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, _
                               X As Single, Y As Single)
    If Button = 1 Then BarY = Y: BarX = X
End Sub
 
Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, _
                               X As Single, Y As Single)
 
    If Button = 1 Then
        Label1.Top = Label1.Top + Y - BarY
        Label1.Left = Label1.Left + X - BarX
    End If
 
End Sub



PM MAIL WWW   Вверх
neic
Дата 6.9.2008, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Спасибо.

Вот ещё вопрос, как передвигать Combo?
Не MouseDown, не MouseMove у него нет... =(


PM MAIL WWW ICQ Skype   Вверх
I_Am_Rock
Дата 6.9.2008, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Ну, я могу предложить только один способ. 
1) Разместить на форме Frame
2) Изменить свойство этого фрейма BorderStyle на 0 (и фрейм не будет виден)
3) Разместить на этом фрейме Combo.
4) Весь код адаптировать под фрейм
Единственным минусом этого явл. то, что для того, чтобы перетащить Combo нужно тащить не за само Combo, а рядышком.

Если этот способ вам не подойдет, буду думать еще...
PM MAIL WWW   Вверх
neic
Дата 6.9.2008, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Нужно именно на этом компоненте щелкать и тащить
PM MAIL WWW ICQ Skype   Вверх
I_Am_Rock
Дата 7.9.2008, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Вот еще как у меня получилось - проект в прик. файле... Не знаю, как еще можно...

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  11.rar 1,41 Kb
PM MAIL WWW   Вверх
neic
Дата 7.9.2008, 01:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Блин так не далеко был от разгадки =)
Спс...проблема решена =)

Буду сидеть думать, как визуально изменять размеры у элементов.
PM MAIL WWW ICQ Skype   Вверх
I_Am_Rock
Дата 7.9.2008, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Цитата(neic @  7.9.2008,  01:41 Найти цитируемый пост)
Буду сидеть думать, как визуально изменять размеры у элементов. 

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

Это сообщение отредактировал(а) I_Am_Rock - 7.9.2008, 13:03
PM MAIL WWW   Вверх
neic
Дата 9.9.2008, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



I_Am_Rock хорошая идея...но я наверн буду делать как в самом VB6, с помощью точек =)

ТЫ предлагаешь сделать сделать так: кликнул по стрелочке вправо размер увеличился на +10 (например) ДА? 
PM MAIL WWW ICQ Skype   Вверх
Данкинг
Дата 9.9.2008, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Цитата(neic @ 10.9.2008,  00:40)
ТЫ предлагаешь сделать сделать так: кликнул по стрелочке вправо размер увеличился на +10 (например) ДА?

Да и я бы так же делал, собственно. Весьма наглядно и понятно, как мне кажется.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
I_Am_Rock
Дата 10.9.2008, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Цитата(neic @  9.9.2008,  23:40 Найти цитируемый пост)
ТЫ предлагаешь сделать сделать так: кликнул по стрелочке вправо размер увеличился на +10 (например) ДА?  


Да

neic, см. пример в прикрепл. файле. Только у меня чего-то не получилось именно со стрелочками - там изменение размеров делается через W S A D - как в комп играх.)

Но я буду пробовать - может у меня получится как ты хочешь...

Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  nn.rar 1,21 Kb
PM MAIL WWW   Вверх
I_Am_Rock
Дата 10.9.2008, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Сделал, как ты хотел  и случайно удалил :( А так классно получилось...

Вобщем, можно, чтобы по углам объекта были "прилеплены" синие квадратики PictureBox - каждый из них имеет такие же MouseDown и MouseMove, как и объект + плюс их перемещение вызывает изменение свойств left height width top объекта
PM MAIL WWW   Вверх
neic
Дата 11.9.2008, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 839
Регистрация: 28.1.2007

Репутация: нет
Всего: 7



Вот ребят, что-то я растерялся =)

Сохраняю цвет (background) из Picture, а там как-то не то получается...

Цвет сохраняется в таком формате: 
-2147483630  - соохраняется как зелённый, открывается как чёрный
33023 - сохраняется как ораженвый, так и открывается...

Хз, что за формат вообщем, не могу разобраться...пробовал через HEX (типа, а вдруг повезёт) сделать, тож не то получается...

Я в графике вообщем бум-бум...прошу помощи =)
PM MAIL WWW ICQ Skype   Вверх
I_Am_Rock
Дата 11.9.2008, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 523
Регистрация: 18.1.2008

Репутация: 12
Всего: 15



Создавай новую тему - модераторы здесь строгие... Может, смогу что-нибудь придумать...

Добавлено через 9 минут и 1 секунду
И когда будешь создавать тему, покажи свой код сохранения цвета...
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0515 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.