15 / 0 / 0
Регистрация: 06.06.2008
Сообщений: 67
1

Снова нестандартные формы !!!

23.11.2010, 20:26. Показов 2784. Ответов 6
Метки нет (Все метки)

Доброго времени суток... Есть проблемка (чисто ради интереса), хочу создать окно произвольной формы и на нем какие то объекты... Нашол кучу статей в нете по этому поводу, все ЯКОБЫ рабочие но на практике нет. Вот накидал проект на WPF, как утверждает одна из статей используя супер-свойство AllowsTransparency="True" можно добиться желаемого результата, но в действительности, вокруг рисунка белый фон окна. Прилагаю проектик, может подскажете как быть ?

И еще, Госпада, может подскажете как это реализовывать в WinForms, без использования регионов т.к. утомительно, статьи в нете работают если монитор настроен на 16 битное качество цветопередачи, но это ж не выход !



Заранее спасибо !
Вложения
Тип файла: rar Nestandart_OKNO.rar (28.0 Кб, 40 просмотров)
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2010, 20:26
Ответы с готовыми решениями:

Нестандартные формы
Доброй ночи уважаемые :) Вопросец такой у меня: как сделать нестандартную форму? Например как...

Нестандартные формы и XP
Господа, кто-то делал нестандартные формы (круглые ...) под XP? Я пытаюсь сделать форму по...

Снова хром, снова сапопроизвольно открывается, снова bkrfdf.xyz и казино
Здравствуйте! Собственно, проблема уже не новая, хотя, как показывают сообщения форума, за...

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

6
Эксперт .NET
4342 / 2007 / 387
Регистрация: 27.03.2010
Сообщений: 5,469
Записей в блоге: 1
23.11.2010, 22:07 2
Во первых надо рисунки добавлять как ресурсы, а не привязывать к жёсткому пути. Ну или не в XAML, а в коде грузить картинку с папки в которой запущено приложение. Например я ваш проект запустил и у меня не был найден рисунок, так как был задан жёсткий путь к нему. В обозревателе решений наводим указатель мыши на свой проект, жмём правую кнопку, далее: Добавить -> Существующий элемент -> ищем свою картинку и добавляем. А в пути просто прописываем название изображения. Вот модифицированный код.
XML
1
        <Image MouseLeftButtonDown="image1_MouseLeftButtonDown" Source="Безимени.png" Name="image1" Stretch="Fill" />
Нужно свойству главного окна Background присвоить Null. Это делается в инспекторе объектов, где вместо стандартного белого цвета выбираем его отсутствие.

Вообще нестандартную форму окну можно придать, если просто кинуть на неё Border и настроить его внешний вид. Тень добавить можно в виде эффекта. Короче не обязательно использовать картинку.

Прикрепил проект, где показано оба рабочих варианта. Один делает нестандартный вид окна изображением, второй Border'ом. Проект для 2008 студии.
Вложения
Тип файла: rar NotStandartWindow.rar (49.9 Кб, 149 просмотров)
1
Эксперт .NET
4342 / 2007 / 387
Регистрация: 27.03.2010
Сообщений: 5,469
Записей в блоге: 1
23.11.2010, 22:17 3
В WinForms я по крайней мере знаю 1 способ. Рисуешь картинку, где невидимая её часть будет нарисована скажем аква цветом. Короче посмотри как сделано ТУТ
0
burning1ife
1447 / 1269 / 293
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
23.11.2010, 23:06 4
в свойствах окна
XML
1
Background="Transparent"
0
15 / 0 / 0
Регистрация: 06.06.2008
Сообщений: 67
23.11.2010, 23:48  [ТС] 5
Цитата Сообщение от Casper-SC Посмотреть сообщение
Во первых надо рисунки добавлять как ресурсы, а не привязывать к жёсткому пути. Ну или не в XAML, а в коде грузить картинку с папки в которой запущено приложение. Например я ваш проект запустил и у меня не был найден рисунок, так как был задан жёсткий путь к нему. В обозревателе решений наводим указатель мыши на свой проект, жмём правую кнопку, далее: Добавить -> Существующий элемент -> ищем свою картинку и добавляем. А в пути просто прописываем название изображения. Вот модифицированный код.
XML
1
        <Image MouseLeftButtonDown="image1_MouseLeftButtonDown" Source="Безимени.png" Name="image1" Stretch="Fill" />
Нужно свойству главного окна Background присвоить Null. Это делается в инспекторе объектов, где вместо стандартного белого цвета выбираем его отсутствие.

Вообще нестандартную форму окну можно придать, если просто кинуть на неё Border и настроить его внешний вид. Тень добавить можно в виде эффекта. Короче не обязательно использовать картинку.

Прикрепил проект, где показано оба рабочих варианта. Один делает нестандартный вид окна изображением, второй Border'ом. Проект для 2008 студии.
Огромное человеческое спасибо, Casper-SC !!! Разобрал ...
0
Эксперт .NET
4342 / 2007 / 387
Регистрация: 27.03.2010
Сообщений: 5,469
Записей в блоге: 1
24.11.2010, 00:12 6
Цитата Сообщение от Mustelus Посмотреть сообщение
Огромное человеческое спасибо, Casper-SC !!! Разобрал ...
Ну дык жми под сообщениями +1. =)
1
15 / 0 / 0
Регистрация: 06.06.2008
Сообщений: 67
24.11.2010, 14:21  [ТС] 7
Нажал ))) Но вот в WinForms используеться таже технология. которая работает при мониторе настроеном на 16 битное качество цветопередачи ...( Ну и черт с ним. Будем в WPF работать !
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.11.2010, 14:21

Случайно закрыл конструктор формы. Как открыть его снова?
как его вернуть? не вижу форму, не могу редактировать её из-за этого. Добавлено через 11 минут...

Как сделать чтобы таймер дойдя до 0 стартовал снова и снова?
Здравствуйте :) Как сделать чтобы таймер дойдя до 0 стартовал снова и снова? TimerSec = 59;...

Вставить значение скрытого поля с формы в php скрипт, обработать его, вернуть снова в форму и отправить на сервер
Привет. Нужна помощь! Не знаю, как реализовать... Есть форма в которой расположен php скрипт,...

HP 625 снова и снова перезагружается в безопасный не заходит
Ребята помогите , проблема вот какая врубаю я ноут он доходит до заставки майкрософта и снова...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.