标签: window

WinAPI:创建一个具有指定客户区大小的窗口

我想知道如何使用具有特定客户区大小的 Win32 API创建窗口.

当尝试使用以下代码创建窗口时,整个窗口为640x480,窗口的chrome占用了一些客户区域:

HWND       hWnd;
WNDCLASSEX WndClsEx;
ZeroMemory(&WndClsEx, sizeof(WNDCLASSEX));

WndClsEx.cbSize        = sizeof(WNDCLASSEX);
WndClsEx.style         = CS_HREDRAW | CS_VREDRAW;
WndClsEx.lpfnWndProc   = DefWindowProc;
WndClsEx.cbClsExtra    = 0;
WndClsEx.cbWndExtra    = 0;
WndClsEx.hIcon         = LoadIcon(NULL, IDI_APPLICATION);
WndClsEx.hCursor       = LoadCursor(NULL, IDC_ARROW);
WndClsEx.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
WndClsEx.lpszMenuName  = NULL;
WndClsEx.lpszClassName = TEXT("Title");
WndClsEx.hInstance     = hInstance;
WndClsEx.hIconSm       = LoadIcon(NULL, IDI_APPLICATION);

RegisterClassEx(&WndClsEx);

hWnd = CreateWindowEx(  NULL,
            TEXT("Title"),
            TEXT("Title"),
            WS_OVERLAPPEDWINDOW,
            CW_USEDEFAULT,
            CW_USEDEFAULT,
            640,
            480,
            NULL,
            NULL,
            hInstance,
            NULL);
Run Code Online (Sandbox Code Playgroud)

假设简单的数学不能解决问题,我该如何考虑铬尺寸?

注意:我在创建窗口后使用SDL,但我猜它与窗口大小绑定并且与其大小没有区别.

c++ winapi window createwindowex

33
推荐指数
1
解决办法
2万
查看次数

我如何知道是否打开了WPF窗口

在WPF窗口中,我如何知道它是否已打开?

我的目标是当时只打开一个窗口实例.

所以,父窗口中的伪代码是:

if (this.m_myWindow != null)
{
    if (this.m_myWindow.ISOPENED) return;
}

this.m_myWindow = new MyWindow();
this.m_myWindow.Show();
Run Code Online (Sandbox Code Playgroud)

编辑:

我找到了解决我最初问题的解决方案.window.ShowDialog();

它阻止用户打开任何其他窗口,就像模式弹出窗口一样.使用此命令,无需检查窗口是否已打开.

c# wpf window

32
推荐指数
3
解决办法
5万
查看次数

Windows 10 UWP应用程序 - 在桌面上设置窗口大小

我刚刚开始使用Visual Studio 2015 Community Edition在Windows 10 Pro上学习UWP应用程序开发.我尝试通过在MainPage.xaml中设置Page标签的Width和Height属性来修改官方"Hello,world"示例C#版本.有趣的是,当我启动应用程序时,它的大小会有所不同.此外,如果我调整窗口大小然后重新启动它,应用程序似乎记住它以前的窗口大小.

是否可以强制UWP应用程序具有预定义的窗口大小,至少在桌面PC上?

c# window win-universal-app windows-10 uwp

32
推荐指数
2
解决办法
4万
查看次数

在新标签页中打开新窗口

我试图在用户点击按钮时打开一个新窗口,如下所示:

protected assignActity(type: string): void {
    var window = window.open('/#/link');
    this.Service.assignActivity(type).subscribe(res => {
      window.location = '/#/link/' + res;
      console.log(res);
    })
  }
Run Code Online (Sandbox Code Playgroud)

但是它引发了一个错误:

core.umd.js:3468 TypeError: Cannot read property 'open' of undefined
Run Code Online (Sandbox Code Playgroud)

如何纠正它让它工作?

tabs window typescript angular

32
推荐指数
1
解决办法
8万
查看次数

如何获得两个不同情节的窗户

当我们有一个带有图的窗口时,有没有办法告诉R在新窗口中显示新的图?

plot r window

31
推荐指数
3
解决办法
4万
查看次数

Android GUI架构 - Surface/view/window/canvas之间的关系

=========================

更新:经过几天的谷歌搜索和实验,我找到了大多数这些愚蠢问题的答案.查看我提交的答案.

=========

Android Window的责任是什么?

以下是一些问题:

  • 是否负责收集和发送输入?
  • 视图和窗口之间有什么关系?与DFB中的表面和窗口之间的关系相同?
  • 活动和窗口之间有什么关系?每个活动都有窗口吗?
  • 是否可以从应用程序创建一个窗口?什么时候有必要?
  • Android支持多窗口吗?

编辑:添加更多问题:

  1. 各种类的职责是什么,例如Window,View,Canvas,Surface以及它们如何相互协作?

  2. 通常一个Activity有多少个窗口?

3.一个活动中的所有视图都将附加到Window吗?附加是什么意思?

  1. 每个窗口都有表面?每个画布都有表面?

  2. View负责focus/keyEvent/manager,而Cavus只负责"绘图"操作.

  3. WindowManager负责Window堆叠?这与SurfaceFlinger有什么关系?

  4. View不拥有Surface,视图包含的Window拥有?

  5. 使用canvas通过调用surface.lockCanvas()得到View.

  6. 何时调用onDraw(Canvas)?如何以及谁传递画布参数?

  7. Canvas有尺寸吗?Window的表面总是全屏吗?

再次编辑:

看完Romain Guy http://www.youtube.com/watch?v=duefsFTJXzc&feature=feedwll&list=WL提供的精彩演示后,几个问题得到解决并添加了几个问题:)

  1. 每个Activity都有一个ViewRoot,因此有一个Window吗?
  2. 有没有必要明确地创建一个窗口?并且窗口的表面是否全屏?
  3. 状态栏是否会在另一个窗口中?
  4. 表面的大小是多少?这总是全屏吗?

android frameworks window view directfb

31
推荐指数
2
解决办法
7594
查看次数

jquery - 保持窗口不改变滚动位置,同时将项目添加到列表中?

我有一个页面显示消息,我希望它像Facebook一样工作,但没有懒惰的加载器.消息按时间顺序显示,最近一次显示.

我的消息列表最初填充了x个最新消息,窗口滚动到底部.当用户开始阅读该帖子时,他们会从下到上阅读.如果他们到达顶部,他们可以加载更多消息...我让他们点击一个按钮... facebook有一个懒惰的加载器.新消息将添加到列表中.

问题:由于新消息被添加,现有消息被推下,导致用户失去"查看"位置.在添加新消息时,如何保持用户当前的视图位置?例如,在Facebook中打开一个长消息线程,滚动到顶部导致添加新消息...即使滚动位置确实如此,您的视图位置也不会改变.

jquery scroll window list prepend

31
推荐指数
3
解决办法
3万
查看次数

在批处理的新窗口中运行批处理文件?

我知道以前似乎已经问过,但是我需要一个批处理在新窗口中打开另一个批处理.我试过了:

start abc.bat

cmd abc.bat

run abc.bat
Run Code Online (Sandbox Code Playgroud)

和别的.他们都在同一个窗口打开,或者只是在新窗口中打开命令提示符,忽略我的批处理.是否有批处理命令在新窗口中打开批处理文件?

command window batch-file

30
推荐指数
3
解决办法
8万
查看次数

window.close()不起作用 - 脚本可能只关闭由它打开的窗口

当我试图通过window.close()Javascript 的方法关闭窗口时,我总是遇到问题,而浏览器在控制台上显示以下消息:

"Scripts may close only the windows that were opened by it."
Run Code Online (Sandbox Code Playgroud)

这发生在页面的每个部分.我可以直接使用链接,按钮或脚本运行此命令,但始终显示此消息.

我试图替换window.close();下面的函数(或其变体)的方法,但没有发生任何事情:

window.open('', '_self', '');
window.close();
Run Code Online (Sandbox Code Playgroud)

javascript keyboard-shortcuts window shortcut

30
推荐指数
3
解决办法
9万
查看次数

如何以递归方式删除PowerShell中的所有空文件夹?

我需要以递归方式删除PowerShell中特定文件夹的所有空文件夹(任何级别的checing文件夹和子文件夹).

目前我使用这个脚本没有成功.

你能告诉我怎么解决吗?

$tdc='C:\a\c\d\'
$a = Get-ChildItem $tdc -recurse | Where-Object {$_.PSIsContainer -eq $True}
$a | Where-Object {$_.GetFiles().Count -eq 0} | Select-Object FullName
Run Code Online (Sandbox Code Playgroud)

我在Win 8.1上使用PowerShell

powershell window windows-8.1

30
推荐指数
5
解决办法
4万
查看次数