yb0312 2016-07-07 10:15 采纳率: 20%
浏览 1149
已结题

WIN32绘图滚动显示问题

WIN32做Direct2d的绘图软件,想实现绘图的缩放功能,我的想法是当缩放比例大于1时,窗口显示部分图形,其它部分通过拖动滚动条显示。但是我在写这部分内容的时候,发现一个问题,在初始化direct2d的绘图的时候,需要将绘图区域与主窗口大小绑定,代码如下:

 // 初始化绘图目标
    HRESULT hr = p_pFactory->CreateHwndRenderTarget(
        RenderTargetProperties(),
        HwndRenderTargetProperties(hwnd, { rect.right,rect.bottom }),
        &p_pRender
    );

我发现不管如何修改direct2d的的绘图区域,她始终只有主窗口客户区的大小,当绘图尺寸超过主窗口尺寸时,它会自动将绘图按比例缩放到客户区(ClientRect)尺寸的大小,无法实现滚动显示功能。
请问如何在不改变整个窗口大小的前提下,修改客户区的尺寸,来实现滚动条拖动显示功能?

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-03-13 00:35
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符