Окно наложения с прозрачным планом кликиC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Окно наложения с прозрачным планом клики

Сообщение Anonymous »

Я хочу создать компаньон для видеоигры. Только окна. Он должен всегда быть на вершине и выступать в качестве дополнительного элемента пользовательского интерфейса. Я хочу сделать это с avalonia.
Так что означает: нет очевидного окна: без титула, нет элемента Alt+вкладка
Я смог достичь этого с помощью ws_ex_transprent . В основном как < /p>

Код: Выделить всё

private const int WS_EX_LAYERED = 0x80000; // needed to make it clickthrough
private const int WS_EX_TOOLWINDOW = 0x80; // toolwindow means no alt+tab entry
private const int WS_EX_TRANSPARENT = 0x20; // disables hit testing -> bad

private void OnWindowActivated(object? sender, EventArgs e)
{
if (sender is not Window window) return;

if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
IntPtr? platformHandle = window.TryGetPlatformHandle()?.Handle;

if (platformHandle.HasValue && platformHandle.Value != IntPtr.Zero)
{
IntPtr hWnd = platformHandle.Value;

// Get current extended style
int extendedStyle = GetWindowLong(hWnd, GWL_EXSTYLE);

// Add WS_EX_LAYERED, WS_EX_TRANSPARENT, and WS_EX_TOOLWINDOW
_ = SetWindowLong(hWnd, GWL_EXSTYLE, extendedStyle | WS_EX_LAYERED | WS_EX_TRANSPARENT | WS_EX_TOOLWINDOW);
}
}
}
< /code>
WS_EX_TRANSPARENT
оказывает эффект, что все окно не достиг поддержки. Это означает, что события указателей всегда будут вполне игнорироваться.
, но я хочу сделать, это просто отключить тестирование удара на заднем плане. А затем решайте для каждого элемента, нужно ли он быть хиттором или нет. Но Аволония не позволит мне это сделать. По крайней мере, я не смог понять.



< /code>
When I keep the window like that and don't extend the window styles it does everything I want EXCEPT the hit tests... it just won't let me click through the window into the background.

Подробнее здесь: https://stackoverflow.com/questions/797 ... background
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Членство в WooCommerce проверяет, может ли пользователь (с текущим планом членства) получить доступ к содержимому.
    Anonymous » » в форуме Php
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Покупка в приложении во Flutter с бесплатным планом для iOS
    Anonymous » » в форуме IOS
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Значок приложения с прозрачным фоном не отображается прозрачным на устройстве
    Anonymous » » в форуме Android
    0 Ответы
    129 Просмотры
    Последнее сообщение Anonymous
  • Значок приложения с прозрачным фоном не выглядит прозрачным на устройстве
    Anonymous » » в форуме Android
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Изображение с эффектом наложения и наложения
    Anonymous » » в форуме CSS
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»