画个红叉否定Windows

博客展示了一段非博主编写的代码,在Windows环境下实现屏幕画叉功能。代码先获取屏幕长宽,创建画布,设置画笔颜色和粗细,然后从屏幕左上角到右下角、右上角到左下角画两条线,最后释放画布资源。

这个是看别人的代码得到的,不是我写的。

void CHhDlg::OnOK()
{
  //先得到屏幕的长宽:
  int ScreenWidth = ::GetSystemMetrics(SM_CXSCREEN);
  int ScreenHeight = ::GetSystemMetrics(SM_CYSCREEN);
  HDC hDC = ::GetDC(0);
  //得到“画布(Canvas)”
  CDC* ScreenCanvas = new CDC();
  ScreenCanvas->m_hDC = hDC;
  //设置画布的画笔(Pen)
  CPen pen(1, 10, RGB(255,0,0));
  CPen* oldpen;
  oldpen=ScreenCanvas->SelectObject(&pen);
  //ScreenCanvas->Pen->Color = clRed;  //画笔的颜色为红色(Red)
  //ScreenCanvas->Pen->Width = 10;     //画笔的粗细
  //开始画叉啦,需要画两笔,这是第一笔:左上到右下
  ScreenCanvas->MoveTo(0,0);        //把画笔移到(Move to)坐标0,0处,即屏幕最左上角
  ScreenCanvas->LineTo(ScreenWidth,ScreenHeight);  //从当前位置画一条线(Line to)到屏幕的右下角。

  //第二笔:右上到左下:
  ScreenCanvas->MoveTo(ScreenWidth,0);
  ScreenCanvas->LineTo(0,ScreenHeight);

  ScreenCanvas->SelectObject(oldpen);
  //释放“画布”:
 
  ScreenCanvas->m_hDC = 0;
 
  delete ScreenCanvas;
  ::ReleaseDC(0,hDC);

  //CDialog::OnOK();
}

点击这里看图

### Android Studio 应用程序红叉问题解决方案 当在 Android Studio 中遇到应用程序显示红叉的问题时,这通常表示存在编译错误或其他配置问题。以下是可能导致此问题的原因以及相应的解决方法: #### 可能原因及解决办法 1. **Gradle 同步失败** 如果 Gradle 文件中有语法错误或依赖项未正确加载,则可能会导致同步失败并引发红叉警告。 - 检查 `build.gradle` 文件中的依赖项是否正确声明[^1]。 - 尝试点击工具栏上的 “Sync Now” 或手动执行菜单命令 `File -> Sync Project with Gradle Files`。 2. **缺少必要的库文件** 若项目所需的某些库未被正确导入,也可能触发此类错误。 - 确认所有必需的第三方库已在项目的 `dependencies` 部分正确定义[^3]。 - 使用以下代码片段作为参考来添加常见的 UI 工具包支持: ```gradle dependencies { implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31' } ``` 3. **资源文件冲突** 资源命名重复或者路径不合法也会造成构建过程中的异常。 - 审视 res/ 目录下的各个子目录 (drawable/, layout/, values/) ,查找是否有非法字符或大小写敏感引起的同名现象。 4. **Java 版本兼容性问题** 不匹配的目标 JDK 设置可能妨碍正常编译流程。 - 修改 module 的 build.gradle 文件里 javaVersion 参数至合适的版本号,比如下面的例子适用于较新的 API level 和 Kotlin 编程环境: ```gradle android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } } ``` 5. **虚拟设备设置不当** 测试所使用的 AVD(Android Virtual Device)参数不合适也会影响运行效果。 - 打开 AVD Manager 并重新创建一个新的模拟器实例,确保其硬件规格满足应用需求[^2]。 6. **其他潜在因素** 包括但不限于网络连接不稳定致使组件下载中断、本地 SDK Tools 更新滞后等问题都需逐一排查。 ```bash # 清理旧数据尝试修复 ./gradlew clean assembleDebug ``` 以上措施能够有效应对大部分情况下出现的应用无法启动状况;然而具体场景下仍可能存在特殊情形需要针对性处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值