Гость
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении / 25 сообщений из 61, страница 1 из 3
09.11.2018, 23:27
    #39730925
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Здравствуйте!
Не нашел нигде информации о том, как реализовать вот такую задачу:

Есть у меня некое приложение. Для примера давайте возьмем самый простой мессенджер, который будет в виде полупрозрачного окна (WPF оформит это дело) прикреплен, ну пусть, к левой части экрана. Если мы будем смотреть фильм на полном экране или играть в игру, опять же, в полноэкранном режиме, то при активации окна мессенджера будет происходить вылет на рабочий стол (либо же будет вылезать панель задач и меню Пуск, если та же самая игра запущена в режиме: В окне во весь экран). Это все-таки некруто.
Вопрос: можно ли сделать так, чтобы при активации окна моего приложения не было вылета на рабочий стол? Т.е. чтобы мы быстренько могли отписать сообщение и тут же вернуться в игру.

Надеюсь понятно объяснил, чего хочу добиться) Очень рассчитываю на вашу помощь! Решение такой задачи можно будет применить для разработки множества интересных приложений.

P.S. Пишу на C#+WPF
...
Рейтинг: 0 / 0
10.11.2018, 00:34
    #39730947
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderP.S. Пишу на C#+WPFхитрый?
Прошлую тему закрыл решением? Даже двумя?
А то впечатление что ты собиратель вопросов для Что где когда.
...
Рейтинг: 0 / 0
10.11.2018, 00:39
    #39730949
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123, не совсем понял наезд. В прошлой теме был ответ, я поблагодарил всех, кто помог. Проблема в чем?
...
Рейтинг: 0 / 0
10.11.2018, 00:52
    #39730952
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoder,
Обычно решение кастомизируют, правят и выкладывают с криком Получилось!
Это мнение со стороны, а не наезд.
...
Рейтинг: 0 / 0
10.11.2018, 01:04
    #39730953
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
Я на данном проекте совсем недавно, поэтому здешних традиций не знаю
Благодарю за информацию, впредь постараюсь делать именно так
...
Рейтинг: 0 / 0
10.11.2018, 09:48
    #39730976
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderпри активации окнакаким событием?
Оно не вылазит на передний план само по себе.
Код давай.
...
Рейтинг: 0 / 0
10.11.2018, 12:05
    #39731000
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
Да кода здесь достаточно самого простого - одно полупрозрачное окно, т.к. модифицировать именно его.

Ну пусть такое

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace Pr
{
    /// <summary>
    /// Логика взаимодействия для MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Ok_Click(object sender, RoutedEventArgs e)
        {

        }

        private void Close_Click(object sender, RoutedEventArgs e)
        {

        }
    }
}



Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<Window x:Class="Pr.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:Pr"
        mc:Ignorable="d"
        Title="MainWindow" Height="448" Width="257" VerticalAlignment="Bottom" Margin="0,0,0,0" AllowsTransparency="True" Background="Transparent" WindowStyle="None" ResizeMode="NoResize" Topmost="True">
    <Grid>

        <Border Width="Auto" Height="Auto" Name="windowFrame" 
 
        BorderBrush="#000" 
        Background="#000" 
        Opacity="0.40" 
 
        BorderThickness="1" 
        CornerRadius="5,5,0,0" Margin="0,0,0,0" Grid.ColumnSpan="2" >
        </Border>
        <Button Content="Ок" HorizontalAlignment="Left" Click="Ok_Click" Margin="46,215,0,0" VerticalAlignment="Top" Width="162" Height="35"/>
        <Button Content="Закрыть" HorizontalAlignment="Left" Click="Close_Click" Margin="46,385,0,0" VerticalAlignment="Top" Width="162" Height="28"/>
        <TextBox HorizontalAlignment="Left" Height="50" Margin="46,60,0,0" TextWrapping="Wrap"  VerticalAlignment="Top" Width="162"/>


    </Grid>
</Window>



И надо, чтобы при клике оно работало, как бы параллельно с "главным" приложением (если можно так выразиться, было привязано к запущенному проигрывателю, игре и т.п.).
...
Рейтинг: 0 / 0
10.11.2018, 12:26
    #39731004
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderнадо, чтобы при клике оно работало, как бы параллельно с "главным" приложением (если можно так выразиться, было привязано к запущенному проигрывателю, игре и т.п.).в первом посте другое ТЗ.
Прочти гугл про юз кейсы и опиши конкретный use case.
...
Рейтинг: 0 / 0
10.11.2018, 12:28
    #39731006
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoder,
Ни или аналог какой типа winamp приведи.
...
Рейтинг: 0 / 0
10.11.2018, 12:28
    #39731007
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
я говорю, что могу не совсем правильно выражаться.
Вся суть именно в первом посте и есть. Надо, чтобы окно в фоновом режиме (пока не активно) работало бы просто поверх текущего приложения, а при его активации не происходило вылета на рабочий стол
...
Рейтинг: 0 / 0
10.11.2018, 13:06
    #39731026
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderPetro123,
я говорю, что могу не совсем правильно выражаться.
Вся суть именно в первом посте и есть. Надо, чтобы окно в фоновом режиме (пока не активно) работало бы просто поверх текущего приложения, а при его активации не происходило вылета на рабочий столнет не понятно.
Не торопись.
Ты и так как то быстро пишешь код для программиста).
Найди аналог и use case.
...
Рейтинг: 0 / 0
10.11.2018, 13:13
    #39731028
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderНадо, чтобы окно в фоновом режиме (пока не активно) работало бы просто поверх текущего приложения,блин, это сделано в прошлой твоей теме.
Давай скрины готового приложения прошлой темы.
А потом скрин проблемы.
Имхо
Удачи!
...
Рейтинг: 0 / 0
11.11.2018, 00:51
    #39731233
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
Так в фоновом режиме оно будет работать уже при свойстве Topmost, которое ставит окно поверх всех других окон
А по поводу задания, я прикрепил скрин, на котором активно полупрозрачное окно.
Так вот внизу появилась панель задач при этом. Такого не должно быть. Если бы мы были в игре в полноэкранном режиме - нас бы вообще на рабочий стол выкинуло, а такого также хотелось бы избежать
Прошлая тема здесь не при чем. Суть здесь абсолютно в другом
...
Рейтинг: 0 / 0
11.11.2018, 08:00
    #39731263
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoder,

В прошлой теме я давал вариант без окна. Помнишь?
Тогда и этого топика бы не было.
Верно?
Логично?
Скрин не плохой. Молодец. Видно что что то пишешь.
...
Рейтинг: 0 / 0
11.11.2018, 08:34
    #39731266
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderТак вот внизу появилась панель задач при этом.в win api AFAIK есть метод не показывать окно в панели задач.
Но тут WPF, поэтому данный вариант - ждем профи.
...
Рейтинг: 0 / 0
11.11.2018, 12:19
    #39731305
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
Т.е. если скрыть приложение из панели задач, то при активации его окна не будет происходить вылета на рабочий стол?
...
Рейтинг: 0 / 0
11.11.2018, 13:25
    #39731313
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderPetro123,
Т.е. если скрыть приложение из панели задач, то при активации его окна не будет происходить вылета на рабочий стол?
по архитектуре лучше вообще без окна, т.к. все события завязаны на хэндл окна, а ты с ними борешься.
И в игрушках окна рисованные.
А будет ли этот хак со скрытием работать - х.з.
В винде десятке у меня начинает мигать в панели задач иконка при окончании фонового потока.
Привлекает внимание)).
...
Рейтинг: 0 / 0
11.11.2018, 14:48
    #39731336
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
Ты вот уже и в той теме говорил о том, как игрушки сделаны и в этой вот. Можешь скинуть сайт мб какой, где можно почитать о том, как они устроены? В идеале, чтобы там еще примерчик был, чтобы получше вникнуть.

И второй момент, насколько я понял, в предыдущей теме вопрос был решен таким образом, что мы попросту скрываем окно и работает уже с его элементами. И чтобы решить задачу из уже текущей темы, нужно также работать с элементами (т.е. скрыть окно и "вешать" обработку клика уже непосредственно на эти самые элементы).
...
Рейтинг: 0 / 0
11.11.2018, 16:54
    #39731373
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoder,
Я давал ссылу на gamedev.ru

MrKoderИ второй момент, насколько я понял, в предыдущей теме вопрос был решен таким образом, что мы попросту скрываем окно и работает уже с его элементами. И чтобы решить задачу из уже текущей темы, нужно также работать с элементами (т.е. скрыть окно и "вешать" обработку клика уже непосредственно на эти самые элементы).
Это был вариант номер 1. К автору и обращайся.
Я топил за вариант номер 2.
По ТЗ он должен работать. Ну у самого опыта на wpf для реализации маловато.
Сделай ты по моему ТЗ. В чем проблема. Код в виде псевдокода я дал.
Профи промолчали, у меня счас Core проект. Мне некогда.
Делай.
...
Рейтинг: 0 / 0
11.11.2018, 16:57
    #39731374
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoder(т.е. скрыть окно и "вешать" обработку клика уже непосредственно на эти самые элементы).в прошлой теме проси Roman Mejtes скрыть окно и нафига ты создал данную тему?
...
Рейтинг: 0 / 0
12.11.2018, 01:57
    #39731508
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
Создал новую, чтобы помойки на форуме на было. На кибере за разные вопросы в одной и той же теме могут настучать по голове
...
Рейтинг: 0 / 0
12.11.2018, 07:21
    #39731518
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderПрошлая тема здесь не при чем. Суть здесь абсолютно в другомв прошлой теме было тз про ПЛАГИН к приложению.
Решено?
Покажи приложение А и плагин к нему Б.
Не решено? Пиши в старой теме.
...
Рейтинг: 0 / 0
12.11.2018, 11:17
    #39731604
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
Petro123,
В прошлой теме Roman Mejtes отписал решение: "Клик сквозь форму"
В этой теме: "Предотвратить вылет на рабочий стол при активации формы"

Если бы я мог написать этот плагин, то не писал бы сюда, наверное это крайне логично
Что ты хочешь, чтобы я скинул уже 25 раз? Мне его пост сюда переслать?
...
Рейтинг: 0 / 0
12.11.2018, 11:19
    #39731606
MrKoder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
*плагин для предотвращения вылета на рабочий стол
...
Рейтинг: 0 / 0
12.11.2018, 11:47
    #39731618
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении
MrKoderВ прошлой теме Roman Mejtes отписал решение: "Клик сквозь форму"
MrKoder*плагин для предотвращения вылета на рабочий стол
Я бы одним ударом уил двух зайцев.
Рисованное информационное окно плагин.
Код ранее я дал.
Пробовать ты не хочешь.
Болтаешь второй день.
...
Рейтинг: 0 / 0
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Общение с окном программы без вылета на рабочий стол, если находимся в другом приложении / 25 сообщений из 61, страница 1 из 3
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]