问题标签 [createwindow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
158 浏览

tkinter - Tkinter.canvas.create_window() 创建两像素边框 - 是否抑制它?

有人能建议我如何抑制外部画布的内部画布的 2 像素边框。例如 - 你可以看到边框:

任何内部画布的内容都由 2 像素边框限定。感谢帮助。

0 投票
1 回答
178 浏览

delphi - Delphi 创建透明窗口

所以我使用 WinApi 的 CreateWindow 函数创建了一个窗口,但似乎无法使孔窗口透明,窗口显示为全黑或全白不透明我错过了什么?


0 投票
1 回答
20 浏览

windows - 将自定义控件集成到 Windows 消息处理系统中

这个问题是关于 Windows 消息系统内部的。我们都知道,在最低级别上,所有控件都接收来自 Windows 系统的消息。每个应用程序都有自己的消息循环来处理它们。我没有找到关于内部的任何好的描述,但我猜想windows有一堆控件,例如当用户点击一个窗口时,操作系统会遍历所有控件以检查点击完成时鼠标所在的区域。特定窗口接收消息。

所以我有两个问题

窗户总是矩形的吗?我的意思是我可以绘制一个自定义控件(圆形按钮)并告诉操作系统消息传递子系统检查鼠标单击该圆形形状。

window 是否有合法的 API 接口来将自定义控件添加到它的子系统中?

我知道所有窗口都是从 CreateWindow API 函数创建的。这个函数需要一个类名。这意味着 Windows 操作系统有一个预定义类列表。是否可以添加一个新的类?

有一些 GUI 库使用自定义控件(例如,用于音乐 VST 插件),但它们实现了检查鼠标是否在其区域内被自己按下。将它移到操作系统区域会很好,因为我们知道 Windows 消息传递系统速度很快,因为它以更高的优先级运行。谢谢

0 投票
1 回答
133 浏览

c++ - 如何正确销毁从另一个线程运行的窗口?

我试图实现的目标是收听有关锁定、解锁等的会话通知。由于架构和避免阻塞主线程,我必须在另一个线程中执行此操作。这是我正在做的事情:

我现在面临的问题是我不知道如何正确编写 stopListeningNotifications() 方法。我必须以某种方式破坏我的窗口并退出消息循环。请建议如何安全地做到这一点。提前致谢。

0 投票
1 回答
256 浏览

c++ - Win32 编辑控件滚动条在 Windows 10 中不起作用

我目前正在尝试在 Win32 控件中实现一些滚动条,但它们在设置WS_HSCROLL标志时不起作用。

不起作用的东西

从我在其他网站上读到的内容来看,它们应该“理论上”工作,因为该类接收消息并且不会将其推送到父窗口(这也是 Rich 控件的工作方式)。

要添加水平滚动条,请使用样式 WS_HSCROLL;要添加垂直滚动条,请使用样式 WS_VSCROLL。带有滚动条的编辑控件处理它自己的滚动条消息。 资源

但是由于某种原因,滚动的东西不会移动,如果您尝试手动移动它,它只会将正方形返回到起点而不做任何移动。

这是一个示例代码:

我也尝试删除ES_AUTOHSCROLL因为我读到滚动条在设置该样式时停止工作但没有任何改变(只是你不能再滚动控制矩形)

0 投票
0 回答
151 浏览

linux - 将 windows 套接字程序移植到 Linux [ WSAAsyncSelect 和 CreateWindow]

我正在尝试将 Windows 中的旧版 Delphi 代码移植到 Linux。但是我很难在 Linux 中找到相当于少数 Windows 功能的功能。目前我有一个使用winsock进行套接字操作的代码块,代码大纲如下(由于安全原因,我无法发布实际的整个代码)。因此,任何关于如何在 Linux 中实现相同功能的建议(不一定适用于 Delphi,但可以在 C/C++ 中)都会有很大帮助。

我对以下代码的理解是,线程创建一个窗口并等待消息 WM_USER ,稍后当程序创建套接字时,一旦在 FD_READ 或 FD_WRITE 或 FD_ACCEPT 或 FD_CONNECT 中发生任何事件,程序就会注册套接字以发送 WM_USER 消息或 FD_CLOSE。一旦套接字具有列表中提到的任何事件,它就会发送 WM_USER 消息,并且窗口处理程序会处理此消息。所以我的问题是,当我将程序移植到 Linux 时,如何在 Linux 中实现类似的功能?

0 投票
1 回答
106 浏览

c++ - 挣扎于CreatWindow函数

我是初学者,我正在尝试编写我的第一个游戏。我正在关注前段时间制作的教程。这是我的代码:

当我尝试编译代码时,它给了我这两个错误:

我究竟做错了什么?

0 投票
1 回答
44 浏览

python - python 3.8 tkinter从方法调用新窗口创建一个空白窗口

我试图通过按下现有窗口的按钮来调用新窗口。创建新窗口时,原始窗口应关闭。当我按下按钮时,新窗口将按预期显示,但还会出现一个空白窗口。使用tk.Tk()ortk.Toplevel()将导致相同的结果。

稍后在程序中我想再次销毁创建的窗口。当使用鼠标关闭空白窗口时,当该方法应用于新窗口tk.Tk()时会产生错误“应用程序已被破坏” 。destroy()

我正在为每个新窗口创建一个新类,因为原始程序应该返回一些变量。我知道这个话题已经有很多问题了,但对我来说,这些问题似乎都不太适合并帮助我找到解决问题的方法。我很感激任何帮助!

0 投票
1 回答
84 浏览

c++ - CreateWindow 找不到窗口类

CreateWindow()在升级到 VS2019 之前,我正在使用在 VS2015 上正常工作的 API。升级到 VS2015 CreateWindow API 后返回 null HWND。AtlAxWinInit()API前调用CreateWindow()如下图:

GetLastError() 正在返回 1407 错误代码,即ERROR_CANNOT_FIND_WND_CLASS

找不到窗口类。

你能帮我解决这个问题吗..

谢谢..

0 投票
1 回答
89 浏览

c++ - CreateWindow 预期表达式和语法错误

我正在关注 Dan Zaidan 关于如何在 C++ 中制作 pong 的教程,但它已经过时了一两年,这可能就是我收到这些错误的原因:

E0029 期望一个表达式

C2059 语法错误:')'

还有几行代码,如有必要,我可以包含它们。

编辑 1:添加了 1 个 CW_USEDEFAULT。我仍然收到错误,E0167 和 C2664。编辑 2:添加了更多代码,希望能让你们更好地理解。