小编sha*_*are的帖子

Win32:如何创建一个无边框弹出窗口

Win32 API为窗口创建提供了许多样式,我正在寻找一种样式,可以从我使用此代码创建的窗口中删除一个像素的边框:

DWORD dwExtStyle = 0;
DWORD dwStyle = WS_POPUPWINDOW;

    m_hWnd = CreateWindowEx(
    dwExtStyle,
    className,
    windowName,
    dwStyle,
    300,
    300,
    100,
    100,
    NULL,
    NULL,
    hInstance,
    NULL);

ShowWindow(m_hWnd, SW_SHOW);
Run Code Online (Sandbox Code Playgroud)

我得到了结果:

在此输入图像描述

标志的组合可以从窗口中删除黑色边框.

c++ user-interface winapi win32gui

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

XCode 和 _bittest 函数

我有一个为 Win32 开发的小 C++ 项目,我想将它移植到 OSX。代码使用类似_bittest和的函数,_bittest64但我在 XCode 头文件中没有找到相同的函数。

这些功能的替代品是什么?可能有很好的工作 polyfill。该项目确实是一个遗产,目前不需要额外的性能。

c++ macos winapi porting intrinsics

1
推荐指数
1
解决办法
515
查看次数

C++枚举重新授权和C++ 0x

如果我想排除枚举问题并在C++中键入redefinition,我可以使用代码:

struct VertexType
{
    enum
    {
        Vector2 = 1,
        Vertor3 = 2,
        Vector4 = 3,
    };
};

struct Vector2 { ... };
struct Vector3 { ... };
struct Vector3 { ... };
Run Code Online (Sandbox Code Playgroud)

有没有办法删除枚举上面的包装器.我查看了C++ 0x但没有找到关于解决这个问题的附加信息.

c++ enums c++11

0
推荐指数
1
解决办法
826
查看次数

用于事件和绑定异常的一次性lambda

我试图取消订阅本身的lambda.我使用MethodInfo类获取有关lambda的信息,使用Delegate.CreateDelegate方法创建与lambda相同的方法.因此,如果在包含我使用的事件但在另一个类方法(绑定异常)中不起作用的类方法之一中创建的lambda,它可以正常工作.

这是代码:

public class TestClass
{
    public event Action SomeEvent;
    public void OnSomeEvent()
    {
        if (SomeEvent != null)
        {
            SomeEvent();
        }
    }
    public TestClass()
    {
        //IT WORKS FINE!!!
        //SomeEvent += () =>
        //{
        //    Console.WriteLine("OneShotLambda");
        //    MethodInfo methodInfo = MethodInfo.GetCurrentMethod() as MethodInfo;
        //    Action action = (Action)Delegate.CreateDelegate(typeof(Action), this, methodInfo);
        //    SomeEvent -= action;
        //};
    }
}

class Program
{
    static void Main(string[] args)
    {
        TestClass t = new TestClass();
        t.SomeEvent += () =>
            {
                Console.WriteLine("OneShotLambda");
                MethodInfo methodInfo = MethodInfo.GetCurrentMethod() as …
Run Code Online (Sandbox Code Playgroud)

.net c# reflection events lambda

0
推荐指数
1
解决办法
444
查看次数

CSS网格布局:三行网格

我很好奇是否可以使用Grid Layout CSS来创建这样的东西:

************************
*        row #1        *
************************
*                      *
*                      *
*        row #2        *
*                      *
*                      *
************************
*        row #3        *
************************
Run Code Online (Sandbox Code Playgroud)

因此,网格必须填满整个身高.其他元素也有一些限制:

  • 第一行与网格顶部对齐,可以改变它的高度(但是有一个最大高度值)
  • 第3行与底部对齐,可以改变它的高度(也有最大高度值)
  • 因此第2行必须填充网格中的所有剩余空间.
  • 网格容器不应该溢出html主体.

我有一个例子:3行网格布局.我还可以用绝对的位置都这样,但有没有用,因为我可以自动计算出列#2的利润没有任何必要的js代码.

html css grid-layout jsfiddle

0
推荐指数
1
解决办法
3515
查看次数

将数组拆分为数组数组

有一个数组:

var arr = new int[] { 1, 1, 2, 6, 6, 7, 1, 1, 0 };
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法将其拆分为相同值的数组?

var arrs = new int[][] { 
            new int[] { 1, 1 },
            new int[] { 2 },
            new int[] { 6, 6 },
            new int[] { 7 }, 
            new int[] { 1, 1 }, 
            new int[] { 0 } };
Run Code Online (Sandbox Code Playgroud)

我更喜欢linq解决方案但是第一次找不到它.

.net c# linq

0
推荐指数
1
解决办法
445
查看次数