SimpleWindow
载入中...
搜索中...
未找到
Thickness.h
1#pragma once
2
3#include "IComparable.h"
4#include "IToString.h"
5#include <windows.h>
6#include <string>
7#include <type_traits>
8
9namespace sw
10{
14 struct Thickness : public IToString<Thickness>,
15 public IEqualityComparable<Thickness> {
19 double left;
20
24 double top;
25
29 double right;
30
34 double bottom;
35
39 Thickness() = default;
40
44 Thickness(double thickness) noexcept;
45
49 Thickness(double horizontal, double vertical) noexcept;
50
54 Thickness(double left, double top, double right, double bottom) noexcept;
55
62 explicit Thickness(const RECT &rect) noexcept;
63
67 explicit operator RECT() const noexcept;
68
73
77 std::wstring ToString() const;
78 };
79
80 // Thickness应为POD类型
82 std::is_trivial<Thickness>::value && std::is_standard_layout<Thickness>::value,
83 "Thickness should be a POD type.");
84}
相等性比较接口
Definition IComparable.h:14
为支持ToString方法的类提供统一接口
Definition IToString.h:13
值转换器接口
Definition IValueConverter.h:14
SimpleWindow框架的顶级命名空间,所有公共类型、控件、枚举和工具函数均定义于此。
Definition Alignment.h:4
表示矩形区域周围边框的厚度
Definition Thickness.h:15
double right
右边
Definition Thickness.h:29
Thickness(const RECT &rect) noexcept
从RECT结构体构造Thickness结构体
Thickness(double horizontal, double vertical) noexcept
指定横向和纵向值构造Thickness结构体
Thickness(double thickness) noexcept
构造一个四边都相同的Thickness结构体
double top
顶边
Definition Thickness.h:24
Thickness()=default
默认构造函数
bool Equals(const Thickness &other) const noexcept
判断两个Thickness是否相同
double bottom
底边
Definition Thickness.h:34
double left
左边
Definition Thickness.h:19
Thickness(double left, double top, double right, double bottom) noexcept
指定四边的值构造Thickness结构体
std::wstring ToString() const
获取描述当前对象的字符串