亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? suidbctrls.pas

?? 一套還不錯的DELPHI皮膚控件!
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
    UpdateScrollBarsPos();
end;

procedure TsuiDBMemo.UpdateInnerScrollBars;
begin
    if (m_VScrollBar <> nil) and (m_HScrollBar <> nil) then
        ScrollBars := ssBoth
    else if (m_VScrollBar <> nil) and (m_HScrollBar = nil) then
        ScrollBars := ssVertical
    else if (m_HScrollBar <> nil) and (m_VScrollBar = nil) then
        ScrollBars := ssHorizontal
    else
        ScrollBars := ssNone;
end;

procedure TsuiDBMemo.UpdateScrollBars;
var
    info : tagScrollInfo;
    barinfo : tagScrollBarInfo;
begin
    if m_UserChanging then
        Exit;
    m_SelfChanging := true;
    if m_HScrollBar <> nil then
    begin
        barinfo.cbSize := SizeOf(barinfo);
        GetScrollBarInfo(Handle, Integer(OBJID_HSCROLL), barinfo);
        if (barinfo.rgstate[0] = STATE_SYSTEM_INVISIBLE) or
           (barinfo.rgstate[0] = STATE_SYSTEM_UNAVAILABLE) then
        begin
            m_HScrollBar.LineButton := 0;
            m_HScrollBar.Enabled := false;
            m_HScrollBar.SliderVisible := false;
        end
        else
        begin
            m_HScrollBar.LineButton := abs(barinfo.xyThumbBottom - barinfo.xyThumbTop);
            m_HScrollBar.SmallChange := 3 * m_HScrollBar.PageSize;
            m_HScrollBar.Enabled := true;
            m_HScrollBar.SliderVisible := true;
        end;
        info.cbSize := SizeOf(info);
        info.fMask := SIF_ALL;
        GetScrollInfo(Handle, SB_HORZ, info);
        m_HScrollBar.Max := info.nMax - Integer(info.nPage) + 1;
        m_HScrollBar.Min := info.nMin;
        m_HScrollBar.Position := info.nPos;
    end;

    if m_VScrollBar <> nil then
    begin
        barinfo.cbSize := SizeOf(barinfo);
        GetScrollBarInfo(Handle, Integer(OBJID_VSCROLL), barinfo);
        if (barinfo.rgstate[0] = STATE_SYSTEM_INVISIBLE) or
           (barinfo.rgstate[0] = STATE_SYSTEM_UNAVAILABLE) then
        begin
            m_VScrollBar.LineButton := 0;
            m_VScrollBar.Enabled := false;
            m_VScrollBar.SliderVisible := false;
        end
        else
        begin
            m_VScrollBar.LineButton := abs(barinfo.xyThumbBottom - barinfo.xyThumbTop);
            m_VScrollBar.Enabled := true;
            m_VScrollBar.SliderVisible := true;
        end;
        info.cbSize := SizeOf(info);
        info.fMask := SIF_ALL;
        GetScrollInfo(Handle, SB_VERT, info);
        m_VScrollBar.Max := info.nMax - Integer(info.nPage) + 1;
        m_VScrollBar.Min := info.nMin;
        m_VScrollBar.Position := info.nPos;
    end;
    m_SelfChanging := false;
end;

procedure TsuiDBMemo.UpdateScrollBarsPos;
begin
    if m_HScrollBar <> nil then
    begin
        m_HScrollBar.Left := Left + 1;
        m_HScrollBar.Top := Top + Height - m_HScrollBar.Height - 2;
        if m_VScrollBar <> nil then
            m_HScrollBar.Width := Width - 2 - m_VScrollBar.Width
        else
            m_HScrollBar.Width := Width - 2
    end;

    if m_VScrollBar <> nil then
    begin
        m_VScrollBar.Left := Left + Width - m_VScrollBar.Width - 2;
        m_VScrollBar.Top := Top + 1;
        if m_HScrollBar <> nil then
            m_VScrollBar.Height := Height - 2 - m_HScrollBar.Height
        else
            m_VScrollBar.Height := Height - 2;
    end;

    UpdateScrollBars();    
end;

procedure TsuiDBMemo.WMClear(var Message: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBMemo.WMKeyDown(var Message: TWMKeyDown);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBMemo.WMLBUTTONDOWN(var Message: TMessage);
begin
    inherited;
    m_MouseDown := true;
    UpdateScrollBars();
end;

procedure TsuiDBMemo.WMMOUSEWHEEL(var Message: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBMemo.WMMOVE(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBarsPos();
end;

procedure TsuiDBMemo.WMSetText(var Message: TWMSetText);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBMemo.WMSIZE(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBarsPos();
end;

procedure TsuiDBMemo.WMHSCROLL(var Message: TWMHScroll);
begin
    inherited;
    if m_UserChanging then
        Exit;

    UpdateScrollBars();
end;

procedure TsuiDBMemo.WMLButtonUp(var Message: TMessage);
begin
    inherited;
    m_MouseDown := false;
end;

procedure TsuiDBMemo.WMMOUSEMOVE(var Message: TMessage);
begin
    inherited;
    if m_MouseDown then UpdateScrollBars();
end;

procedure TsuiDBMemo.WMVSCROLL(var Message: TWMVScroll);
begin
    inherited;
    if m_UserChanging then
        Exit;

    UpdateScrollBars();
end;

procedure TsuiDBMemo.SetFileTheme(const Value: TsuiFileTheme);
begin
    m_FileTheme := Value;
    if m_VScrollBar <> nil then
        m_VScrollBar.FileTheme := Value;
    if m_HScrollBar <> nil then
        m_HScrollBar.FileTheme := Value;
    SetUIStyle(m_UIStyle);
end;

procedure TsuiDBMemo.SetUIStyle(const Value: TsuiUIStyle);
var
    OutUIStyle : TsuiUIStyle;
begin
    m_UIStyle := Value;

    if UsingFileTheme(m_FileTheme, m_UIStyle, OutUIStyle) then
        m_BorderColor := m_FileTheme.GetColor(SUI_THEME_CONTROL_BORDER_COLOR)
    else
        m_BorderColor := GetInsideThemeColor(OutUIStyle, SUI_THEME_CONTROL_BORDER_COLOR);

    if m_VScrollBar <> nil then
        m_VScrollBar.UIStyle := OutUIStyle;
    if m_HScrollBar <> nil then
        m_HScrollBar.UIStyle := OutUIStyle;    
    Repaint();
end;

{ TsuiDBImage }

constructor TsuiDBImage.Create(AOwner: TComponent);
begin
    inherited Create(AOwner);
    BorderWidth := 2;

    UIStyle := GetSUIFormStyle(AOwner);
end;

procedure TsuiDBImage.Notification(AComponent: TComponent;  Operation: TOperation);
begin
    inherited;

    if (
        (Operation = opRemove) and
        (AComponent = m_FileTheme)
    )then
    begin
        m_FileTheme := nil;
        SetUIStyle(SUI_THEME_DEFAULT);          
    end;
end;

procedure TsuiDBImage.SetBorderColor(const Value: TColor);
begin
    m_BorderColor := Value;
    Repaint();
end;

procedure TsuiDBImage.SetFileTheme(const Value: TsuiFileTheme);
begin
    m_FileTheme := Value;
    SetUIStyle(m_UIStyle);
end;

procedure TsuiDBImage.SetUIStyle(const Value: TsuiUIStyle);
var
    OutUIStyle : TsuiUIStyle;
begin
    m_UIStyle := Value;
    if UsingFileTheme(m_FileTheme, m_UIStyle, OutUIStyle) then
        m_BorderColor := m_FileTheme.GetColor(SUI_THEME_CONTROL_BORDER_COLOR)
    else
        m_BorderColor := GetInsideThemeColor(OutUIStyle, SUI_THEME_CONTROL_BORDER_COLOR);
    Repaint();
end;

procedure TsuiDBImage.WMEARSEBKGND(var Msg: TMessage);
begin
    inherited;

    DrawControlBorder(self, m_BorderColor, Color);
end;

procedure TsuiDBImage.WMPAINT(var Msg: TMessage);
begin
    inherited;

    DrawControlBorder(self, m_BorderColor, Color);
end;

{ TsuiDBListBox }

constructor TsuiDBListBox.Create(AOwner: TComponent);
begin
    inherited;

    ControlStyle := ControlStyle + [csOpaque];
    BorderStyle := bsNone;
    BorderWidth := 2;
    m_SelfChanging := false;
    m_MouseDown := false;

    UIStyle := GetSUIFormStyle(AOwner);
end;

procedure TsuiDBListBox.Notification(AComponent: TComponent;
  Operation: TOperation);
begin
    inherited;

    if AComponent = nil then
        Exit;

    if (
        (Operation = opRemove) and
        (AComponent = m_VScrollBar)
    )then
    begin
        m_VScrollBar := nil;
    end;

    if (
        (Operation = opRemove) and
        (AComponent = m_FileTheme)
    )then
    begin
        m_FileTheme := nil;
        SetUIStyle(SUI_THEME_DEFAULT);          
    end;
end;

procedure TsuiDBListBox.SetBorderColor(const Value: TColor);
begin
    m_BorderColor := Value;
    Repaint();
end;

procedure TsuiDBListBox.WMEARSEBKGND(var Msg: TMessage);
begin
    inherited;

    DrawControlBorder(self, m_BorderColor, Color);
end;

procedure TsuiDBListBox.WMPAINT(var Msg: TMessage);
begin
    inherited;

    DrawControlBorder(self, m_BorderColor, COlor);
end;

procedure TsuiDBListBox.CMEnabledChanged(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.LBADDSTRING(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.LBDELETESTRING(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.LBINSERTSTRING(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.LBNSELCHANGE(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.LBNSETFOCUS(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.LBSETCOUNT(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

procedure TsuiDBListBox.OnVScrollBarChange(Sender: TObject);
begin
    if m_SelfChanging then
        Exit;
    SendMessage(Handle, WM_VSCROLL, MakeWParam(SB_THUMBPOSITION, m_VScrollBar.Position), 0);
    Invalidate;
end;

procedure TsuiDBListBox.SetVScrollBar(const Value: TsuiScrollBar);
begin
    if m_VScrollBar = Value then
        Exit;
    if m_VScrollBar <> nil then
    begin
        m_VScrollBar.OnChange := nil;
        m_VScrollBar.LineButton := 0;
        m_VScrollBar.Max := 100;
        m_VScrollBar.Enabled := true;
    end;

    m_VScrollBar := Value;
    if m_VScrollBar = nil then
        Exit;
    m_VScrollBar.Orientation := suiVertical;
    m_VScrollBar.OnChange := OnVScrollBArChange;
    m_VScrollBar.BringToFront();

    UpdateScrollBarsPos();
end;

procedure TsuiDBListBox.UpdateScrollBars;
var
    info : tagScrollInfo;
    barinfo : tagScrollBarInfo;
begin
    m_SelfChanging := true;
    if m_VScrollBar <> nil then
    begin
        barinfo.cbSize := SizeOf(barinfo);
        GetScrollBarInfo(Handle, Integer(OBJID_VSCROLL), barinfo);
        if (barinfo.rgstate[0] = STATE_SYSTEM_INVISIBLE) or
           (barinfo.rgstate[0] = STATE_SYSTEM_UNAVAILABLE) then
        begin
            m_VScrollBar.LineButton := 0;
            m_VScrollBar.Enabled := false;
            m_VScrollBar.Visible := false;
        end
        else
        begin
            m_VScrollBar.LineButton := abs(barinfo.xyThumbBottom - barinfo.xyThumbTop);
            m_VScrollBar.Enabled := true;
            m_VScrollBar.Visible := true;
        end;
        info.cbSize := SizeOf(info);
        info.fMask := SIF_ALL;
        GetScrollInfo(Handle, SB_VERT, info);
        m_VScrollBar.Max := info.nMax - Integer(info.nPage) + 1;
        m_VScrollBar.Min := info.nMin;
        m_VScrollBar.Position := info.nPos;
    end;
    m_SelfChanging := false;
end;

procedure TsuiDBListBox.UpdateScrollBarsPos;
begin
    if m_VScrollBar <> nil then
    begin
        m_VScrollBar.Left := Left + Width - m_VScrollBar.Width - 2;
        m_VScrollBar.Top := Top + 1;
        m_VScrollBar.Height := Height - 2;
    end;

    UpdateScrollBars();
end;

procedure TsuiDBListBox.WMDELETEITEM(var Msg: TMessage);
begin
    inherited;
    UpdateScrollBars();
end;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成人一区二区| 奇米色一区二区| 久久久久综合网| 中文字幕中文字幕一区二区| 亚洲一区二区偷拍精品| 狠狠狠色丁香婷婷综合激情| 色呦呦国产精品| 精品日韩一区二区三区 | 欧美色图一区二区三区| 久久午夜免费电影| 亚洲一区影音先锋| 国产成人在线色| 91精品婷婷国产综合久久性色| 中文字幕不卡的av| 精品一区二区三区视频| 欧美专区日韩专区| 欧美国产乱子伦| 激情综合五月天| 制服丝袜中文字幕亚洲| 亚洲精品老司机| 岛国精品在线观看| 日韩欧美久久一区| 男男视频亚洲欧美| 欧美乱妇15p| 国产精品久久久久久久久免费相片| 紧缚奴在线一区二区三区| 欧美精品黑人性xxxx| 一区二区三区在线高清| 成人av电影在线观看| 中文字幕国产一区| 国产成人综合在线观看| xnxx国产精品| 国产一区二区三区在线看麻豆| 欧美三级韩国三级日本三斤| 亚洲一区欧美一区| 欧美色区777第一页| 亚欧色一区w666天堂| 欧美日韩一区二区三区四区五区| 亚洲国产精品久久一线不卡| 91丝袜呻吟高潮美腿白嫩在线观看| 国产精品女主播在线观看| 波多野结衣中文字幕一区| 中文字幕一区二区三区四区不卡| 成人黄色av网站在线| 亚洲人成在线观看一区二区| 一本色道久久综合亚洲aⅴ蜜桃| 亚洲欧洲精品一区二区精品久久久| 91久久线看在观草草青青 | 欧美三级乱人伦电影| 免费在线观看日韩欧美| 欧美一区二区三区的| 国产黄色精品视频| 日韩精品最新网址| 亚洲成人av电影| 日韩高清不卡一区二区| 国产精品福利av| 91精品国产全国免费观看| 精品久久久久久久久久久久久久久久久 | 亚洲欧洲制服丝袜| 欧美视频一区二区| 麻豆精品在线视频| 中文字幕日韩av资源站| 成人免费三级在线| 秋霞影院一区二区| 亚洲免费电影在线| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 久久久综合视频| 欧美日本免费一区二区三区| 色婷婷精品久久二区二区蜜臂av | 欧美一激情一区二区三区| 加勒比av一区二区| 国产自产v一区二区三区c| 久久女同性恋中文字幕| 91日韩精品一区| 欧美一级日韩一级| 色婷婷综合五月| 波多野洁衣一区| 99视频在线精品| 久久精品99国产精品日本| 国模少妇一区二区三区| 国产一区视频在线看| av不卡免费电影| av在线播放一区二区三区| 91性感美女视频| 欧美精品丝袜中出| 久久精品视频一区二区三区| 国产精品久久久久影院老司| 亚洲国产精品av| 亚洲国产aⅴ成人精品无吗| 欧美tk—视频vk| 色悠悠久久综合| 国产午夜精品久久久久久免费视| 午夜视黄欧洲亚洲| 精品国产成人在线影院| 中文字幕免费不卡| 亚洲一区在线看| 欧美色偷偷大香| 亚洲高清免费在线| 欧美一级理论性理论a| 国产一区二区精品久久91| 欧美极品xxx| 精品一区二区av| 欧美一级夜夜爽| 成人精品在线视频观看| 亚洲欧美激情视频在线观看一区二区三区| 欧美在线观看禁18| 久久激情五月激情| 久久色视频免费观看| 精品亚洲国内自在自线福利| 久久九九全国免费| 国产jizzjizz一区二区| 国产精品毛片久久久久久久| 大胆亚洲人体视频| 亚洲va欧美va国产va天堂影院| 欧美一区二区精品在线| 99re热视频精品| 久久国产生活片100| 亚洲女人的天堂| 欧美成人猛片aaaaaaa| 国产精品白丝jk黑袜喷水| 国产亚洲成年网址在线观看| 一本到高清视频免费精品| 九九九精品视频| 亚洲国产你懂的| 久久久99久久| 日韩免费一区二区三区在线播放| 国产成人免费视频一区| 天天影视色香欲综合网老头| 日韩欧美一卡二卡| 国产无遮挡一区二区三区毛片日本| 这里是久久伊人| 91视频国产资源| 国产又粗又猛又爽又黄91精品| 有码一区二区三区| 国产欧美一区二区精品婷婷| 日韩情涩欧美日韩视频| 欧美日韩专区在线| 色久优优欧美色久优优| 成人综合婷婷国产精品久久| 国产在线不卡一区| 久久国产人妖系列| 日韩电影一区二区三区四区| 一区二区日韩电影| 欧美成人精品3d动漫h| 亚洲视频一区在线| 在线观看日产精品| 极品瑜伽女神91| 麻豆国产91在线播放| 亚洲午夜电影在线观看| 自拍av一区二区三区| 久久久久久久久久久99999| 日韩你懂的在线播放| 日韩欧美你懂的| 91视频国产观看| 日韩亚洲欧美成人一区| 欧美高清激情brazzers| 这里是久久伊人| 欧美精品成人一区二区三区四区| 欧美日韩一区二区三区不卡| 99久久精品国产精品久久| 国产主播一区二区三区| 日韩国产一二三区| 精品无码三级在线观看视频| 精品亚洲欧美一区| 国产成人午夜视频| 99re热这里只有精品免费视频| 色妞www精品视频| 日本亚洲最大的色成网站www| 久久国产日韩欧美精品| 国产一区福利在线| 成人动漫在线一区| 99亚偷拍自图区亚洲| 久久精品国产99久久6| 中文字幕不卡一区| 免费在线观看一区| 国产成人av福利| 色综合天天综合在线视频| 91精品福利视频| 欧美日本在线观看| 91麻豆精品国产91久久久| 亚洲自拍另类综合| 日韩精品电影一区亚洲| 麻豆极品一区二区三区| 99久久精品国产导航| 欧美日韩一区二区三区高清| 欧美一卡二卡在线| 久久精品亚洲乱码伦伦中文| 亚洲欧美色图小说| 国产视频一区二区三区在线观看 | 99国产精品久久久久久久久久| 色伊人久久综合中文字幕| 欧美日韩国产成人在线免费| 日韩欧美在线网站| 精品国产电影一区二区| 麻豆精品久久久| 99精品视频一区| 欧美一区二区成人6969| 国产精品成人免费精品自在线观看| 国产精品网曝门| 国产精品毛片久久久久久|