2016-12-16 28 views
0

White Border的wxWidgets wxBORDER_NONE和wxRESIZE_BORDER使白色区域

如何删除这个白色区域?它破坏了我的GUI设计。
我想制作一个由windows生成的阴影和蓝线。 所以我找到了一个选项,使蓝线(wxRESIZE_BORDER),但它使像图像的白色区域。

//MainFrame.h 
#pragma once 
#define _CRT_SECURE_NO_WARNINGS 

#include <wx/frame.h> 


class MainFrame : public wxFrame 
{ 
public: 

    MainFrame(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(310, 390), long style = wxSUNKEN_BORDER|wxRESIZE_BORDER); 

}; 


//MainFrame.cpp 
#include "MainFrame.h" 

MainFrame::MainFrame(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style) : wxFrame(parent, id, title, pos, size, style) 
{ 
    this->Centre(wxBOTH); 
} 


//Main.h 
#pragma once 
#include <wx/wx.h> 

class App : public wxApp 
{ 
public: 
    virtual bool OnInit(); 
}; 


//Main.cpp 
#include "Main.h" 
#include "MainFrame.h" 

IMPLEMENT_APP(App) 

bool App::OnInit() 
{ 
    MainFrame *frame = new MainFrame(NULL); 
    frame->Show(true); 

    return true; 
} 
+0

你想要围绕它的蓝线? – Lehue

+0

提供[MCVE](http://stackoverflow.com/help/mcve)并指定库的版本。 –

+0

@SangWanJeon,你可以发布你的代码吗?你正在试试这个版本的Windows? – Igor

回答

0

随着wxSUNKEN_BORDER你得到的东西是这样的:Window without border

然后它不需要wxRESIZE_BORDER部分。但请注意,这会使交叉消失。

+0

如果我使用wxSUNKEN_BORDER,则不会自动生成阴影。我需要和需要那个影子。 –

+0

对不起@SangWanJeon,然后我不知道该怎么做。 – Lehue