- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不确定我是否在做一些极其愚蠢的事情,但我对剪贴板的调用从 3.1.3 开始就停止工作了。我进入代码,它都在较低级别工作(wxClipboard::AddData 返回 true)。这在 3.1.2 下工作,我使用以下配置在 macOS 10.12.6 Sierra 上构建:
configure --disable-shared --enable-unicode --prefix="$(pwd)" --enable-ipc --enable-base64 --enable-exceptions --enable-fontenum --enable-fs_archive --enable-stdpaths --enable-sysoptions --enable-threads --enable-url --enable-aui --enable-graphics_ctx --enable-printarch --enable-timer --enable-ribbon --enable-webview --enable-display --enable-splash --enable-snglinst --enable-printfposparam --with-opengl --with-osx_cocoa --with-expat=builtin --with-cxx=11 --enable-cxx11 --enable-stl --enable-std_iostreams --enable-std_string --enable-ftp --enable-http --enable-fileproto --enable-sockets --enable-ipv6 --enable-dataobj --enable-ipc --enable-any --enable-arcstream --enable-backtrace --enable-cmdline --enable-datetime --enable-debugreport --enable-dynamicloader --enable-exceptions --enable-ffile --enable-file --enable-filehistory --enable-filesystem --enable-fontmap --enable-fs_inet --enable-fs_zip --enable-fsvolume --enable-fswatcher --enable-geometry --enable-sound --enable-stopwatch --enable-streams --enable-tarstream --enable-textbuf --enable-textfile --enable-variant --enable-zipstream --enable-protocol --enable-protocol-http --enable-protocol-ftp --enable-protocol-file --enable-html --enable-htmlhelp --enable-propgrid --enable-svg --enable-clipboard --enable-dnd --enable-accel --with-osx_cocoa --disable-debug_flag --with-libpng=builtin --with-libjpeg=builtin --with-zlib=builtin
我知道基础 SDK 已经从以前的(10.4?)移动到(10.9),但我没有明确指定它,所以我将使用 3.1.3 的默认值。
对于我使用以下配置选项构建的同一系统下的 wxWidgets 3.1.3:
configure --disable-shared --enable-unicode --prefix="$(pwd)" --enable-stc --enable-ipc --enable-base64 --enable-exceptions --enable-fontenum --enable-fs_archive --enable-stdpaths --enable-sysoptions --enable-threads --enable-url --enable-aui --enable-graphics_ctx --enable-printarch --enable-timer --enable-ribbon --enable-webview --enable-display --enable-splash --enable-snglinst --enable-printfposparam --with-opengl --with-osx_cocoa --with-expat=builtin --with-cxx=11 --enable-cxx11 --enable-stl --enable-std_iostreams --enable-std_string --enable-ftp --enable-http --enable-fileproto --enable-sockets --enable-ipv6 --enable-dataobj --enable-ipc --enable-any --enable-arcstream --enable-backtrace --enable-cmdline --enable-datetime --enable-debugreport --enable-dynamicloader --enable-exceptions --enable-ffile --enable-file --enable-filehistory --enable-filesystem --enable-fontmap --enable-fs_inet --enable-fs_zip --enable-fsvolume --enable-fswatcher --enable-geometry --enable-sound --enable-stopwatch --enable-streams --enable-tarstream --enable-textbuf --enable-textfile --enable-variant --enable-zipstream --enable-protocol --enable-protocol-http --enable-protocol-ftp --enable-protocol-file --enable-html --enable-htmlhelp --enable-propgrid --enable-svg --enable-clipboard --enable-dnd --enable-accel --with-osx_cocoa --disable-debug_flag --with-libpng=builtin --with-libjpeg=builtin --with-zlib=builtin --with-libtiff=builtin
我已经编写了一个示例测试应用程序来对此进行测试,但剪贴板似乎已失效。如果我使用剪贴板示例,粘贴按钮将被禁用。
这是一个测试应用程序:
#include <wx/wx.h>
#include <wx/app.h>
#include <wx/clipbrd.h>
class MainFrame : public wxFrame
{
protected:
wxStaticText* label;
public:
MainFrame( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 500,300 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL )
: wxFrame(parent, id, title, pos, size, style)
{
this->SetSizeHints( wxDefaultSize, wxDefaultSize );
wxBoxSizer* bSizer1;
bSizer1 = new wxBoxSizer( wxVERTICAL );
label = new wxStaticText( this, wxID_ANY, wxT("<pasted text should go here>"), wxDefaultPosition, wxDefaultSize, wxALIGN_LEFT|wxST_NO_AUTORESIZE );
label->Wrap( -1 );
bSizer1->Add( label, 1, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
this->SetSizer( bSizer1 );
this->Layout();
this->Centre( wxBOTH );
if (wxTheClipboard->Open())
{
wxTheClipboard->SetData(new wxTextDataObject("Hello this is pasted text"));
wxTheClipboard->Close();
}
if (wxTheClipboard->Open())
{
if (wxTheClipboard->IsSupported( wxDF_TEXT ))
{
wxTextDataObject data;
wxTheClipboard->GetData(data);
label->SetLabel(data.GetText());
}
wxTheClipboard->Close();
}
}
virtual ~MainFrame() { }
};
class demoApp: public wxApp
{
MainFrame *frame = nullptr;
public:
demoApp();
virtual ~demoApp() { }
virtual bool OnInit() override;
};
IMPLEMENT_APP(demoApp)
//#include <ApplicationServices/ApplicationServices.h>
demoApp::demoApp()
{
//ProcessSerialNumber PSN;
//GetCurrentProcess(&PSN);
//TransformProcessType(&PSN,kProcessTransformToForegroundApplication);
}
bool demoApp::OnInit()
{
frame = new MainFrame(nullptr);
frame->Show();
SetTopWindow(frame);
SetExitOnFrameDelete(true);
return true;
}
你可以用类似的东西来构建它
g++ clipboard.cpp -o clipboard -std=gnu++11 -I/DeveloperLibs/wxWidgets-3.1.3/build-debug/lib/wx/include/osx_cocoa-unicode-static-3.1/ -I/DeveloperLibs/wxWidgets-3.1.3/include -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXMAC__ -D__WXOSX__ -D__WXOSX_COCOA__ -D_DEBUG=1-stdlib=libc++ -L/DeveloperLibs/wxWidgets-3.1.3/build-debug/lib/ -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework System -lwx_baseu-3.1 -lwx_osx_cocoau_adv-3.1 -lwx_osx_cocoau_core-3.1 -liconv -lz -headerpad_max_install_names -lwxregexu-3.1 -lwx_osx_cocoau_qa-3.1 -framework Quartz -lwx_baseu_xml-3.1 -lwxjpeg-3.1 -lwxpng-3.1 -lwxzlib-3.1 -lwxexpat-3.1 -lwxtiff-3.1 -llzma
我完全看不出有什么问题??我应该注意到,同一个应用程序无法在 Mojave 下运行(使用来自 Sierra 系统的二进制文件,甚至使用我的 Mojave 系统上的 wxWidgets 在 Mojave 下构建的二进制文件)。
最佳答案
是的,不幸的是,复制到剪贴板在 3.1.3 发布前不久被破坏了。它很快就在 this commit 中修复了你应该能够在本地挑选——或者你可以只更新到最新的主控。
关于c++ - 3.1.3 上的 wxWidgets mac 剪贴板坏了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59180068/
我刚刚在我的雪豹机器上下载了 wxWidget 源代码。源代码是多平台的,所以它也包含 wxWidget 的 windows 和 GTK 组件。我想编译 wxWidget 源代码,但还没有找到好的指南
我正在使用 C++/wxWidgets 开发一个小型应用程序,其中 GUI 的几个部分需要根据例如更新。收到 UDP 数据报。更具体地说,辅助线程尝试在网络中保留可用“客户端”的列表(可能会出现和消失
我在顶层窗口中有一个 wxPanel 的子类,上面有几层 wxSplitter。当显示窗口时,会发生一些调整大小和布局。当它完成时,我的面板背景在其某些背景上有随机垃圾(黑色或窗口的其他部分)。这似乎
作为 wxWidgets 的新手,我需要一些关于如何让 wxTimer 工作的示例代码。 The reference提供了 3 种使用方法,但不包含其中任何一种的示例代码。最理想的是,我想让方法 2
wxWidgets 库包括一个简单的 HTML 解析器和查看器,我试图用它来显示一些简单的 HTML。我想将某些链接(指向尚不存在的项目的链接)设置为不同的颜色,或者以其他方式表明需要创建它们,但我没
我想将同步事件从工作线程发送到 UI 主线程。我如何在 wxWidgets 中做到这一点? sample 的链接真的很有帮助 最佳答案 您应该使用 队列事件(wxEvent* 事件)用于线程间通信。
任何人都可以推荐 CLion 和 wxWdgets 的教程或入门指南吗?我四处寻找,但找不到任何东西。 最佳答案 好, 你应该在这里下载 WxWidgets http://www.wxwidgets.
希望有人能帮我解决这个问题。我正在使用 Visual Studio 2005 并创建一个静态链接到 wxWidgets 中的静态库。我有: 根据他们的指南静态编译wxWidgets 在我的“附加库目录
我目前正在设计将我现有的 .NET/C#/WinForms 项目迁移到一个平台中立的解决方案,我见过的最有吸引力的替代方案似乎是 wxWidgets,特别是考虑到我对 C++ 和 MFC 的熟悉,这似
几周以来,我一直被 wxWidgets 淹没。但是,我需要一些帮助: 动态链接 Unicode、Release、Non-monolithic 版本的 wxWidgets 3.0.0 时,如何链接以下库
我正在尝试一个新的设置。我使用的是 32 位 Windows 8 Pro 笔记本电脑。我已经下载了 MinGW-builds 的 GCC 4.8.1。我用它来编译 LLVM 和 CLang(3.4+
我正在寻找一个如何使用 WxWidgets 在 Windows 上创建 DLL 库的简单示例。 我需要在 DLL 上使用一些 wxWidgets API,它会从 Delphi 调用。 最佳答案 在您的
打包 Perl wxWidgets 应用程序以分发给未安装 Perl 或 wxWidgets 的 Windows 和 Mac 用户的最佳方法是什么? 有问题的用户不是很懂电脑,所以不能指望他们单独安装
我在处理一些用wxWidgets 2.8 编写的代码,现在需要转移到wxWidgets 2.9。 我这样定义: wxLocale m_locale; 和使用 m_locale.Init(iLocale
我在 linux 或 FreeBSD 上构建 wxWidgets 库时注意到 wxWidgets 需要其他 GUI 库,例如 GTK+、Motif 等,而 GTK+、Motif 或 FLTK 库似乎是
这是一个关于 wxBoxSizer 的问题。我正在实现一个自定义 wxWidget,如可折叠 Pane 。 问题是:我有一个 wxBoxSizer (Sizer1),我添加了另一个 wxBoxSize
我正在尝试编译 wxwidgets。我正在使用 mingw32 进行编译并遵循 zip 文件附带的 install.txt,但是当我编译它时,它给了我这些错误。 如果不存在 gcc_mswd mkdi
我想了解新的主要 wxWidgets 3.0 版本的学习资源。我看到网上有很多旧版本的资源,还有 2005 年的一本书。但我不确定它们是否合适。 Web 教程将是最好的,但欢迎任何内容。 如前所述,我
wxWidgets应用程序在主窗口的状态栏中显示普通菜单项的帮助字符串。不幸的是,对于使用wxWindow::PopupMenu命令调用的菜单,它似乎没有显示它们,我需要这样做。 我尝试将EVT_ME
如何获取模块路径? 我正在编写包含在 DLL 中的扩展,并希望在运行时获取我的库的路径。 更新 当然第一种方法很好用 static wxString GetModulePath() { sta
我是一名优秀的程序员,十分优秀!