社区
Windows SDK/API
帖子详情
在线等待!! 高手请帮帮忙!!急!
zzlong
2003-10-23 04:19:03
大家点击桌面,按下鼠标的左键并拉动他,会看到一个线框.要如何话?
我在Form1的Mouse事件中要实现相同的功能,老是有问题,在框的中间老是有一层颜色或是其他的东西,不是透明的,我希望能像桌面那样只看到那个长方形的线框,要如何写代码?各位高手请帮帮忙阿!搞定马上给分.不够再加.
...全文
21
4
打赏
收藏
在线等待!! 高手请帮帮忙!!急!
大家点击桌面,按下鼠标的左键并拉动他,会看到一个线框.要如何话? 我在Form1的Mouse事件中要实现相同的功能,老是有问题,在框的中间老是有一层颜色或是其他的东西,不是透明的,我希望能像桌面那样只看到那个长方形的线框,要如何写代码?各位高手请帮帮忙阿!搞定马上给分.不够再加.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zzlong
2003-10-23
打赏
举报
回复
#if (__BORLANDC__ >= 0x530)
#pragma package(smart_init)
#endif
#if (__BORLANDC__ < 0x530)
#define PACKAGE
#endif
请问这是用来干什么用的?能解释一下吗?
我先把分给你.
zzlong
2003-10-23
打赏
举报
回复
谢谢,ccrun(老妖).我试一下.
ccrun.com
2003-10-23
打赏
举报
回复
.cpp file
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "MainU.h"
//---------------------------------------------------------------------------
#if (__BORLANDC__ >= 0x530)
#pragma package(smart_init)
#endif
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
: TForm(Owner)
{//创建画布对象
DesktopCanvas = new TCanvas;
DesktopCanvas->Handle = GetDC(0);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{ //初始化变量,得到鼠标的位置
Dragging = true;
TPoint pt(X,Y);
pt.x = X;
pt.y = Y;
if (DrawOnTopCB->Checked) {
DrawCanvas = DesktopCanvas;
::ClientToScreen(Handle, &pt);
DrawRect.left = pt.x;
DrawRect.top = pt.y;
DrawRect.right = pt.x;
DrawRect.bottom = pt.y;
}
else {
DrawCanvas = Canvas;
DrawRect.left = X;
DrawRect.top = Y;
DrawRect.right = X;
DrawRect.bottom = Y;
}
DrawCanvas->DrawFocusRect(DrawRect);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormMouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{ //绘制虚线
if (Dragging) {
TPoint pt(X,Y);
if (DrawOnTopCB->Checked)
::ClientToScreen(Handle, &pt);
DrawCanvas->DrawFocusRect(DrawRect);
DrawRect.right = pt.x;
DrawRect.bottom = pt.y;
DrawCanvas->DrawFocusRect(DrawRect);
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormMouseUp(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{ //停止绘制
if (Dragging) {
Dragging = false;
DrawCanvas->DrawFocusRect(DrawRect);
}
}
void __fastcall TMainForm::FormDestroy(TObject *Sender)
{ //释放内存
delete DesktopCanvas;
}
//---------------------------------------------------------------------------
ccrun.com
2003-10-23
打赏
举报
回复
我这有些源代码,贴给你。
.h file
//---------------------------------------------------------------------------
#ifndef MainUH
#define MainUH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------
class TMainForm : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
TButton *Button2;
TCheckBox *DrawOnTopCB;
TMemo *Memo1;
void __fastcall FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y);
void __fastcall FormMouseMove(TObject *Sender, TShiftState Shift,
int X, int Y);
void __fastcall FormMouseUp(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y);
void __fastcall FormDestroy(TObject *Sender);
private: // User declarations
bool Dragging;
TRect DrawRect;
TCanvas* DrawCanvas;
TCanvas* DesktopCanvas;
//HDC DrawDC;
public: // User declarations
__fastcall TMainForm(TComponent* Owner);
};
//---------------------------------------------------------------------------
#if (__BORLANDC__ < 0x530)
#define PACKAGE
#endif
extern PACKAGE TMainForm *MainForm;
//---------------------------------------------------------------------------
#endif
web自动化-键盘&对话框&下拉框&显示
等待
&隐式
等待
本课程主要讲解web自动化-键盘 下拉框 对话框 显示
等待
隐式
等待
,主要内容如下: 1. 键盘操作案例 2. 下拉框操作 3. 对话框处理 4. 滚动条操作 5. 显示
等待
6. 隐式
等待
7. 强制...
[来自iPc.me] 技术文,绝对是牛叉的技术文!把妹
高手
谈如何跟刚搭讪
刚搭讪认识的妹子,匆匆互留电话号码,彼此了解有限,该如何通过短信与MM聊天呢?因为搭讪建立的安全感不会很高,所以认识之后不适合马上进入追求程序,下面我们先列举一些错误的短信聊天方式,看看你中枪了没有吧…… PS 发展到一定程度该打铁趁热要表白了,
请
看把妹进阶篇 - 想娶洋老婆必备20句浪漫表白 一些错误的短信聊天方式: 单刀直入型:“今天有空一起吃饭吗?”(太着
急
了,没有
c语言中字体rgb,C语言中如何将一个图片的RGB值存入一个数组里
C语言中怎么将一个图片的RGB值存入一个数组里求大家给给例子的代码,或者主要的思想,希望大家
帮帮忙
啊,很
急
,谢谢。------解决方案--------------------一定要用数组么?结构体行么?------解决方案--------------------添加到搜藏已解决在API中如何把RGB值转化成数组值悬赏分:20-解决时间:2009-9-509:48求
高手
解答附加源代码!提问者...
Linux连接总是报:connection reset by peer问题!!!程序退出的解决办法
求救:Linux连接总是报:connection reset by peer问题!!! 各位大哥:小弟我在Linux下写的服务程序,当压力很大(连接客户量多频繁、发送
请
求频繁)的时候,服务总是会部分连接报connection reset by peer错误,结果我的服务把它关闭! 查了部分资料,大部分是认为Linux有个tcp_wrap守护服务程序来管理tcp,默认值为一秒只能连一个上来。...
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家分? 2:100分
急
求,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望
高手
帮忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有帮助!顺便散分! 6:VBA
请
教怎
Windows SDK/API
1,221
社区成员
8,136
社区内容
发帖
与我相关
我的任务
Windows SDK/API
C++ Builder Windows SDK/API
复制链接
扫一扫
分享
社区描述
C++ Builder Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章