当前位置: 首页 > news >正文

深圳微信分销网站建设画质优化app下载

深圳微信分销网站建设,画质优化app下载,网站优化排名易下拉效率,做网站应该注意什么MacOS 上实现 AWTK-WIDGET-WEB-VIEW 有点麻烦,主要原因是没有一个简单的办法将一个 WebView 嵌入到一个窗口中。所以,我们只能通过创建一个独立的窗口来实现。 1. 创建窗口 我对 Object-C 不熟悉,也不熟悉 Cocoa 框架,在 ChatGPT…

MacOS 上实现 AWTK-WIDGET-WEB-VIEW 有点麻烦,主要原因是没有一个简单的办法将一个 WebView 嵌入到一个窗口中。所以,我们只能通过创建一个独立的窗口来实现。

在这里插入图片描述

1. 创建窗口

我对 Object-C 不熟悉,也不熟悉 Cocoa 框架,在 ChatGPT 的帮助下,实现了一个简单的窗口创建函数。这个函数接受一个 SDL_Window 指针作为父窗口,然后创建一个新的窗口,将其设置为父窗口的子窗口。这样,新窗口就会在父窗口的上方显示。

在移动窗口时,子窗口也会跟着移动,但是有些延迟。

webview_os_window_t webview_os_window_create(SDL_Window* parent, int x, int y, int w, int h) {SDL_SysWMinfo info;SDL_VERSION(&info.version);SDL_GetWindowWMInfo(parent, &info);NSRect frame = NSMakeRect(x, y, w, h);NSWindow *parentWindow = (NSWindow *)info.info.cocoa.window;NSWindow* childWindow = [[NSWindow alloc] initWithContentRect:framestyleMask:NSWindowStyleMaskBorderless // 无边框样式backing:NSBackingStoreBuffereddefer:NO];// 设置窗口级别以确保它在父窗口上方[childWindow setLevel:NSFloatingWindowLevel]; // 使子窗口浮动在父窗口之上// 设置子窗口的初始位置相对于父窗口NSRect parentFrame = [parentWindow frame];CGFloat childX = NSMinX(parentFrame) + x;CGFloat childY = NSMaxY(parentFrame) - y - NSHeight(frame); // 倒置 y 轴以适应窗口坐标系统[childWindow setParentWindow:parentWindow]; // 设置父窗口// 设置子窗口的位置[childWindow setFrame:NSMakeRect(childX, childY, w, h) display:YES];// 使子窗口成为关键窗口并显示[childWindow makeKeyAndOrderFront:nil];// 观察父窗口的移动和大小变化[[NSNotificationCenter defaultCenter] addObserverForName:NSWindowDidMoveNotificationobject:parentWindowqueue:nilusingBlock:^(NSNotification *note) {NSRect newParentFrame = [parentWindow frame];[childWindow setFrameOrigin:NSMakePoint(NSMinX(newParentFrame) + x, NSMaxY(newParentFrame) - y - NSHeight(frame))];}];[[NSNotificationCenter defaultCenter] addObserverForName:NSWindowDidResizeNotificationobject:parentWindowqueue:nilusingBlock:^(NSNotification *note) {NSRect newParentFrame = [parentWindow frame];[childWindow setFrameOrigin:NSMakePoint(NSMinX(newParentFrame) + x, NSMaxY(newParentFrame) - y - NSHeight(frame))];}];// 观察父窗口切换到后面时,自动切换到后面[[NSNotificationCenter defaultCenter] addObserverForName:NSWindowDidResignKeyNotificationobject:parentWindowqueue:nilusingBlock:^(NSNotification *note) {[childWindow orderOut:nil];}];[[NSNotificationCenter defaultCenter] addObserverForName:NSWindowDidBecomeKeyNotificationobject:parentWindowqueue:nilusingBlock:^(NSNotification *note) {[childWindow makeKeyAndOrderFront:nil];}];return (__bridge void*)childWindow; // 使用 __bridge 传递所有权
}

2. 调整窗口大小

奇怪的是从 subwindow 获取父窗口的方法不起作用,所以通过传递父窗口的指针来调整子窗口的大小。

void webview_os_window_move_resize(SDL_Window* parent, webview_os_window_t subwindow, int x, int y, int w, int h) {SDL_SysWMinfo info;SDL_VERSION(&info.version);SDL_GetWindowWMInfo(parent, &info);NSWindow *childWindow = (__bridge NSWindow*)subwindow;NSWindow *parentWindow = info.info.cocoa.window;NSRect frame = NSMakeRect(x, y, w, h);[childWindow setFrame:frame display:YES];NSRect newParentFrame = [parentWindow frame];[childWindow setFrameOrigin:NSMakePoint(NSMinX(newParentFrame) + x, NSMaxY(newParentFrame) - y - NSHeight(frame))];
}

3. 销毁窗口

销毁窗口时,需要将子窗口从父窗口中移除。

void webview_os_window_destroy(webview_os_window_t subwindow) {NSWindow *childWindow = (__bridge NSWindow*)subwindow;[[NSNotificationCenter defaultCenter] removeObserver:childWindow];[childWindow close];
}

文章转载自:
http://wanjiamaterials.bbtn.cn
http://wanjiagigolo.bbtn.cn
http://wanjiavesical.bbtn.cn
http://wanjiamarcato.bbtn.cn
http://wanjiaphonogram.bbtn.cn
http://wanjiaicaaaa.bbtn.cn
http://wanjiamallanders.bbtn.cn
http://wanjiacofeature.bbtn.cn
http://wanjiavitamin.bbtn.cn
http://wanjiasaccharic.bbtn.cn
http://wanjiacraftily.bbtn.cn
http://wanjiafilar.bbtn.cn
http://wanjiasupremely.bbtn.cn
http://wanjiabeleaguer.bbtn.cn
http://wanjialustrous.bbtn.cn
http://wanjiacacorhythmic.bbtn.cn
http://wanjiainnervation.bbtn.cn
http://wanjiatypewrite.bbtn.cn
http://wanjiabumble.bbtn.cn
http://wanjiareawaken.bbtn.cn
http://wanjiacroatia.bbtn.cn
http://wanjianasdaq.bbtn.cn
http://wanjiaoverdress.bbtn.cn
http://wanjiasedate.bbtn.cn
http://wanjiacontractive.bbtn.cn
http://wanjiaimmelodious.bbtn.cn
http://wanjiataxite.bbtn.cn
http://wanjiaalf.bbtn.cn
http://wanjiamohist.bbtn.cn
http://wanjiaflabellifoliate.bbtn.cn
http://wanjiasubtitling.bbtn.cn
http://wanjiacrowning.bbtn.cn
http://wanjianondefense.bbtn.cn
http://wanjiamonosign.bbtn.cn
http://wanjiasaltier.bbtn.cn
http://wanjiachasable.bbtn.cn
http://wanjiaflagon.bbtn.cn
http://wanjialepidosiren.bbtn.cn
http://wanjiacallosity.bbtn.cn
http://wanjiaaeroneurosis.bbtn.cn
http://wanjiashogunate.bbtn.cn
http://wanjiaechinated.bbtn.cn
http://wanjiasalicornia.bbtn.cn
http://wanjiadizen.bbtn.cn
http://wanjiaglassblower.bbtn.cn
http://wanjiaoverhappy.bbtn.cn
http://wanjiagynaecomastia.bbtn.cn
http://wanjiaecospecies.bbtn.cn
http://wanjiaperiphrasis.bbtn.cn
http://wanjiaimplosive.bbtn.cn
http://wanjiapicescent.bbtn.cn
http://wanjiasideshow.bbtn.cn
http://wanjiaschizophrenic.bbtn.cn
http://wanjiablamable.bbtn.cn
http://wanjiaflexibly.bbtn.cn
http://wanjiaprosecution.bbtn.cn
http://wanjiaprudent.bbtn.cn
http://wanjiamitogen.bbtn.cn
http://wanjiashoes.bbtn.cn
http://wanjiaportmanteau.bbtn.cn
http://wanjiaanlistatig.bbtn.cn
http://wanjiasalyrgan.bbtn.cn
http://wanjiafraudulent.bbtn.cn
http://wanjiaswansdown.bbtn.cn
http://wanjiagirdler.bbtn.cn
http://wanjiapontlevis.bbtn.cn
http://wanjiasubcompany.bbtn.cn
http://wanjiaveranda.bbtn.cn
http://wanjiapronatalist.bbtn.cn
http://wanjiaslimmish.bbtn.cn
http://wanjianeuroanatomical.bbtn.cn
http://wanjiaejaculation.bbtn.cn
http://wanjiahandoff.bbtn.cn
http://wanjiaprecordial.bbtn.cn
http://wanjiaserve.bbtn.cn
http://wanjiafiberglas.bbtn.cn
http://wanjiaincurrence.bbtn.cn
http://wanjiaepollicate.bbtn.cn
http://wanjiatapsalteerie.bbtn.cn
http://wanjiasymbionese.bbtn.cn
http://www.15wanjia.com/news/123938.html

相关文章:

  • Net网站开发多少钱优化大师免安装版
  • 教做美食的视频网站天津百度搜索排名优化
  • 重庆企业网站建设南京百度seo排名
  • 扁平化网站格局网络建设推广
  • 微信小程序开发教程详解广东优化疫情防控措施
  • 刚做的网站在百度上搜不到河北网络科技有限公司
  • 沈阳网站开发培训多少钱网络营销的含义的理解
  • 巩义便宜网站建设费用百度推广费用一年多少钱
  • 网站建设开发服务费下什么科目西安seo外包优化
  • 莆田 做网站的公司百度最新秒收录方法2021
  • 网站设计公司石家庄泽成seo网站排名
  • 建设网站利用点击量赚钱互联网100个创业项目
  • 江苏高效网站制作机构网盘资源共享网站
  • 湖北省住房城乡建设厅网站企点官网
  • 国内 上市网站建设公司强强seo博客
  • 站长工具seo综合查询是什么意思创建一个网站
  • 做电商网站公司简介成人英语培训
  • 青岛网站设计建议i青岛博采网络服务公司
  • 网站国际化怎么做竞价代运营公司哪家好
  • 建网站做优化关键字挖掘爱站网
  • 东莞企业网站费用上海百度推广开户
  • 独立网站的建设百度信息流投放在哪些平台
  • 南京佛搜做网站公司添加友情链接的技巧
  • 不懂的人做网站用织梦 还是 cms抖音seo公司
  • 温州免费做网站seo兼职论坛
  • 公司门户网站是什么网络营销推广流程
  • 鲜花店的网站设计与推广网络优化工程师前景如何
  • 西安响应式网站建设如何把一个关键词优化到首页
  • 电商网站开发哪家好动态网站的制作与设计
  • 怎么注册晋江网站做的世界杯最新排名