Окно в Окне

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
t116
Бывалый
Бывалый
 
Сообщения: 209
Зарегистрирован: 12.01.2007 (Пт) 12:11

Окно в Окне

Сообщение t116 » 29.03.2007 (Чт) 22:08

Возможно ли сделать так, что бы одно окно отображалось на фоне другого окна? Причем в рабочем состоянии.

Хочу сделать окно по типу Aero - что бы бордюр был полупрозрачным, а рабочая область - нет.

burik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 03.11.2005 (Чт) 22:04
Откуда: Беларусь, Рогачев

Сообщение burik » 29.03.2007 (Чт) 22:38

Не понял..
Типа так:
Код: Выделить всё
Private Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Private Sub Form_Load()
Dim hwnd1 As Long
Form2.Show
hwnd1 = SetParent(Form1.hwnd, Form2.hwnd)
End Sub
Последний раз редактировалось burik 29.03.2007 (Чт) 22:44, всего редактировалось 1 раз.
Между слухов, сказок, мифов,
просто лжи, легенд сомнений
мы враждуем жарче скифов
за несходство заблуждений
Игорь Губерман

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 29.03.2007 (Чт) 22:38

Вообще, SetParent. Но для эмуляции интерфейса Aero придется обойтись рамкой с PNG маской (в поиск по PNG ALPHA) и вторым окном клиентской области.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

t116
Бывалый
Бывалый
 
Сообщения: 209
Зарегистрирован: 12.01.2007 (Пт) 12:11

Сообщение t116 » 30.03.2007 (Пт) 7:27

Это именно то, что мне нужно. Спасибо!

t116
Бывалый
Бывалый
 
Сообщения: 209
Зарегистрирован: 12.01.2007 (Пт) 12:11

Сообщение t116 » 30.03.2007 (Пт) 16:24

BV:

Да, а как насчет эффекта Blur? Я на форуме нашел примеры с применением данного фильтра. Но тут этот фильтр был написан в самом VB. А есть ли какие-нибудь библиотеки, позволяющие наложить Blur на изображение в PictureBox без сильной потери производительности? Например, используя ресурс видеокарты?

t116
Бывалый
Бывалый
 
Сообщения: 209
Зарегистрирован: 12.01.2007 (Пт) 12:11

Сообщение t116 » 30.03.2007 (Пт) 17:44

Вот что получается средствами VB:

http://www.myggle.narod.ru/aero.exe

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 30.03.2007 (Пт) 18:39

Во-первых, есть кнопочка Изображение, очень полезная кнопочка на случай, если после отправки поста на тебя снизошло озарение :)

Теперь о эффекте Blur. Есть http://bbs.vbstreets.ru/viewtopic.php?p=6654492#6654492
Кроме Blur там есть много чего еще. Так же есть GDIPlus.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15

    TopList