Delphi, C++ Builder & .NET sgcUI 구성 제품

sgcEditors, Delphi, C++ Builder & .NET용 현대적인 입력 컨트롤

어떤 모니터에서도 똑같이 보이고 네이티브 편집기처럼 동작하는 폼 입력 9종입니다. 실제 예약 규칙을 갖춘 달력, 날짜 및 시간 선택기, 범위 슬라이더, 색상 선택기, 칩, 별점, 스핀 편집기가 있습니다. 사용자의 언어로 날짜를 입력하고, 속성 하나로 다크 테마로 전환하며, 편집기를 데이터셋에 바인딩하세요.

VCL, FireMonkey, WinForms, WPF, Avalonia용 컨트롤 9종IME와 클립보드를 지원하는 네이티브 텍스트 입력무료 .NET Community 에디션sgcUI Standard에 포함
월 달력, 날짜, 시간, 날짜 및 시간 선택기, 스핀 편집기, 평점, 범위 슬라이더, 토큰 편집기, 색상 선택기가 있는 Gallery 데모

폼에 어울리는 입력 컨트롤

날짜, 범위, 색상, 태그를 빠르게 입력하고 실수하기 어렵게 만드는 기능 11가지입니다.

컨트롤

실제 업무 폼의 필드를 모두 다루는 입력 컨트롤 9종이며 각각 VCL, FireMonkey, .NET에서 사용할 수 있습니다.

하나의 패키지에 담긴 현대적인 입력 컨트롤 9종

컨트롤

하나의 패키지에 담긴 현대적인 입력 컨트롤 9종

예약 폼, 설정 페이지, 필터는 늘 같은 입력을 요구합니다. 달력, 날짜 또는 시간 선택기, 슬라이더, 색상, 태그 목록, 별점, 단위가 있는 숫자입니다. sgcEditors는 이 아홉 가지를 일관된 하나의 제품군으로 제공합니다. 각 컨트롤은 VCL과 FireMonkey에서 동일한 published 속성과 이벤트로, WinForms, WPF, Avalonia에서 동일한 이름으로 존재하므로 한 컨트롤에서 배운 것을 다른 컨트롤에도 그대로 적용할 수 있습니다. 모두 하나의 테마, 하나의 강조 색상, 하나의 키보드 모델을 공유합니다. 팔레트의 SGC Editors 페이지에서 놓기만 하면 처음 실행할 때부터 올바르게 보입니다.

  • TsgcVCLMonthCalendar, TsgcVCLDatePicker, TsgcVCLTimePicker, TsgcVCLDateTimePicker
  • 숫자용 TsgcVCLRangeSlider와 TsgcVCLSpinEdit
  • TsgcVCLColorPicker, TsgcVCLTokenEdit, TsgcVCLRating
  • 모두 TsgcVCLCustomEditor에서 파생됩니다
도움말 항목 읽기
실제 예약 규칙을 따르는 달력

컨트롤

실제 예약 규칙을 따르는 달력

호텔, 병원, 렌탈 데스크는 아무 날짜나 받지 않습니다. 월 달력은 하루를 선택하거나 SelectionMode를 esmRange로 설정해 날짜 범위를 선택하며, MaxRangeDays로 그 범위의 최대 길이를 제한합니다. MinDate와 MaxDate 밖의 날, DisabledDates에 나열된 날, 주말 같은 DisabledWeekDays, OnIsDateDisabled 핸들러가 거부하는 모든 날은 취소선으로 그려지며 선택할 수 없습니다. ISO 8601 주 번호와 월, 연, 10년 보기는 사용자가 멀리 앞으로 이동하도록 돕습니다. 같은 달력이 날짜 선택기의 드롭다운도 구동하므로, 날짜를 선택하는 모든 곳에 규칙이 적용됩니다.

  • SelectionMode: esmSingle 또는 esmRange
  • MinDate, MaxDate, MaxRangeDays
  • DisabledDates, DisabledWeekDays, OnIsDateDisabled
  • ISO 주 번호를 위한 ShowWeekNumbers
도움말 항목 읽기
핸들 두 개로 설정하는 가격 및 날짜 범위

컨트롤 Registered 에디션 전용

핸들 두 개로 설정하는 가격 및 날짜 범위

가격, 무게, 거리 필터는 레일 위의 범위로 표시할 때 가장 읽기 좋습니다. 범위 슬라이더는 핸들 하나로 Min과 Max 사이의 값을, RangeMode에서는 핸들 두 개로 가로 또는 세로 범위를 선택합니다. 눈금, 라벨, 드래그 중인 핸들 위의 값 툴팁을 그리며 레일을 클릭하면 가장 가까운 핸들이 그곳으로 이동합니다. 핸들은 서로 교차하지 않고, Step이 값을 맞추며, MinRange가 최소 간격을 유지하므로 필터가 실수로 비는 일이 없습니다. 값과 라벨은 소수점과 천 단위 구분 기호를 포함해 컨트롤의 로케일을 따릅니다.

  • Value와 EndValue를 가진 RangeMode
  • Min, Max, Step, MinRange
  • TickInterval, ShowLabels, ShowValueTip
  • 통화용 LabelFormat 또는 OnFormatLabel

Community: 핸들 하나만 그려지고 편집되며, EndValue는 유지되지만 표시되지 않습니다.

도움말 항목 읽기
자동 완성을 지원하는 태그와 칩

컨트롤 Registered 에디션 전용

자동 완성을 지원하는 태그와 칩

태그, 수신자, 기술은 한 줄의 텍스트가 아니라 목록입니다. 토큰 편집기는 각 항목을 삭제 버튼이 있는 칩으로 그리고, 칩을 줄바꿈하며 맞지 않으면 스크롤합니다. 구분 기호, Enter, Tab 또는 포커스 해제가 입력한 텍스트를 칩으로 바꾸며, a, b, c를 붙여넣으면 세 개가 만들어집니다. OnValidateToken이 각 항목을 정규화하거나 거부하고, AllowDuplicates, CaseSensitive, MaxTokens가 규칙을 정합니다. Registered 빌드에서는 사용자가 입력하는 동안 자동 완성 목록이 항목을 제안합니다. AddToken, RemoveToken, Clear로 레코드를 불러오거나 저장할 때 코드에서 목록을 변경합니다.

  • Tokens가 칩을 보관하며 Delimiters가 하나를 끝냅니다
  • OnValidateToken과 InvalidTokens가 각 항목을 검사합니다
  • 제안을 위한 AutoCompleteItems와 AutoCompleteMinChars
  • OnTokenAdded와 OnTokenRemoved가 변경을 알려 줍니다

Community: 칩, 유효성 검사, 제한은 동작하지만 자동 완성 목록은 열리지 않습니다.

도움말 항목 읽기

컨트롤 Registered 에디션 전용

알파를 지원하는 모든 색상 선택

테마 편집기, 차트 설정, 라벨 디자이너에는 고정된 팔레트 이상이 필요합니다. 색상 선택기는 견본 그리드, 채도와 명도 사각형, 색조 막대, 알파 막대, 미리보기와 16진수 편집 행을 쌓아 표시하며 Parts가 어떤 것을 보여 줄지 선택합니다. 16진수 편집기는 #RGB, #RGBA, #RRGGBB, #RRGGBBAA를 받습니다. 선택기는 색조를 색상과 별도로 유지하므로 회색도 색조를 보존하고 사용자가 드래그하는 동안 사각형이 튀지 않습니다. 브랜드 팔레트를 견본으로 정의해도 사용자는 한 번의 클릭으로 전체 선택기를 쓸 수 있습니다.

  • ecpSwatches, ecpHSV, ecpAlpha, ecpHex를 가진 Parts
  • 팔레트를 위한 Swatches와 SwatchColumns
  • ARGB 값인 SelectedColor
  • 사용자가 마우스를 놓을 때의 OnChangeComplete

Community: 견본과 16진수만 제공하며 HSV 사각형과 알파 막대는 그려지지 않고 알파는 항상 $FF입니다.

도움말 항목 읽기

입력, 언어, 데이터

키보드 사용자를 위한 빠른 입력, 모든 사용자를 위한 올바른 언어, 데이터셋과의 직접 연결을 제공합니다.

입력, 언어, 데이터

클릭이 아닌 진짜 입력

데이터 입력 담당자는 달력을 클릭하지 않고 날짜를 입력합니다. sgcEditors의 모든 텍스트 필드는 플랫폼의 실제 편집 컨트롤이므로 일본어, 중국어, 한국어 IME 조합, 클립보드, 실행 취소, 컨텍스트 메뉴, 화면 낭독기가 모두 동작합니다. 구문 분석은 유연해서 슬래시, 하이픈, 점, 콜론, 쉼표, 공백이 필드를 구분하고 로케일의 월 및 요일 이름을 이해하며 두 자리 연도는 기준 연도로 보정됩니다. 위쪽과 아래쪽 화살표는 캐럿 아래의 구간 값을 올리고 내리며, 읽을 수 없는 텍스트는 OnParseError를 발생시킵니다.

  • d, m, y, h, n, s 구간을 가진 DisplayFormat
  • 특이한 입력을 받아들이거나 거부하는 OnParseError
  • 선택 필드를 위한 AllowEmpty와 TextHint
  • 스핀 편집기는 소수점 구분자로 . 와 , 를 모두 받습니다
도움말 항목 읽기
컨트롤마다 사용자의 언어로

입력, 언어, 데이터

컨트롤마다 사용자의 언어로

국제 팀과 다국어 제품에는 모든 사용자에게 자연스럽게 읽히는 날짜가 필요합니다. 각 컨트롤에는 사용자 로케일에서 채워지고 실행 중에 변경할 수 있는 자체 FormatSettings가 있어, 한 폼의 두 컨트롤이 서로 다른 로케일을 사용할 수도 있습니다. 달력과 선택기는 여기서 요일 및 월 이름, 날짜 및 시간 형식, 오전과 오후 문자열, 구분 기호를 가져옵니다. FirstDayOfWeek와 WeekNumbering은 로케일 또는 사용자의 선택을 따르며 숫자는 올바른 소수점과 천 단위 구분 기호를 사용합니다. 단위, 힌트, 접근성 이름은 사용자 고유의 속성으로 남으므로 폼의 나머지와 함께 번역할 수 있습니다.

  • 컨트롤별 FormatSettings
  • FirstDayOfWeek: efdLocale 또는 강제 efdMonday
  • WeekNumbering: 기본값은 ewnISO8601
  • 헤드리스 모델용 TsgcEditorLocale
  • 아랍어와 히브리어를 위한 오른쪽에서 왼쪽 지원: 스핀, 드롭다운, 지우기 버튼이 반대쪽으로 이동하고, 슬라이더, 평점, 캘린더가 오른쪽에서부터 흐르며, 편집 필드는 오른쪽에서 왼쪽으로 읽습니다
도움말 항목 읽기
폼을 위한 데이터 인식 버전

입력, 언어, 데이터 Registered 에디션 전용

폼을 위한 데이터 인식 버전

대부분의 Delphi 업무 폼은 TDataSet 위에 있으며 편집기를 하나하나 직접 연결하는 일은 반복적입니다. 데이터 인식 컨트롤 5종은 DataSource와 DataField로 필드에 바로 바인딩됩니다. 날짜 선택기, 시간 선택기, 스핀 편집기, 평점, 그리고 두 번째 핸들이 EndDataField에 바인딩되는 범위 슬라이더입니다. AllowEmpty가 켜져 있으면 null 필드는 비어 있는 상태로 표시됩니다. 이들은 DB 유닛만 사용하는 TsgcEditorFieldLink로 바인딩되므로 FireMonkey 버전은 LiveBindings가 필요 없습니다. .NET에서는 일반 컨트롤이 각 프레임워크의 데이터 바인딩으로 바인딩됩니다. 기존 폼에 놓으면 이미 있는 데이터셋 로직이 변경 없이 계속 동작합니다.

  • TsgcVCLDBDatePicker, TsgcVCLDBTimePicker, TsgcVCLDBSpinEdit
  • TsgcVCLDBRating과 TsgcVCLDBRangeSlider
  • DataSource, DataField, EndDataField
  • WPF: 값 속성이 양방향으로 바인딩됩니다

Community: 데이터 인식 유닛은 비어 있으며, 일반 컨트롤의 .NET 데이터 바인딩은 두 에디션 모두에서 동작합니다.

도움말 항목 읽기

키보드, DPI, 테마

검토자가 확인하는 세부 사항입니다. 마우스가 필요 없고, 모든 모니터에서 선명하며, 애플리케이션과 어울리는 모습입니다.

모든 모니터에서 선명하게

키보드, DPI, 테마

모든 모니터에서 선명하게

150퍼센트 배율의 노트북 옆에 100퍼센트의 외부 모니터를 두는 것이 이제는 일반적이며, 흐릿한 입력은 싸구려처럼 보입니다. sgcEditors는 모든 컨트롤을 96 DPI의 논리 픽셀로 배치하고 화면의 배율로 그리므로 코드에서 할 일이 없습니다. VCL 폼이 다른 DPI의 모니터로 이동하면 내부 편집기와 글꼴이 컨트롤과 함께 조정되고, 드롭다운은 열리는 모니터의 DPI로 그려집니다. FireMonkey 래스터는 Retina와 Android를 위해 씬의 배율을 따릅니다.

  • 논리 픽셀로 배치하고 화면 배율로 그립니다
  • 내부 편집기는 WM_DPICHANGED에서 크기를 다시 조정합니다
  • 드롭다운은 해당 모니터의 DPI를 사용합니다
  • SaveToPNG는 선명한 이미지를 위한 scale을 받습니다
도움말 항목 읽기
키보드와 화면 낭독기 친화적

키보드, DPI, 테마

키보드와 화면 낭독기 친화적

sgcEditors의 어떤 기능도 마우스가 필요하지 않습니다. 그려지는 컨트롤은 스스로 포커스를 받고 텍스트 컨트롤은 내부 편집기로 포커스를 전달하며, 포커스된 컨트롤은 강조색의 2픽셀 포커스 링을 그립니다. 달력에서 화살표는 하루 또는 한 주씩 이동하고 비활성 날을 건너뛰며, PageUp과 PageDown은 한 달씩 이동하고 Shift는 범위를 확장합니다. 선택기에서는 F4 또는 Alt+Down이 드롭다운을 열고 Escape가 값을 복원합니다. 스핀 편집기는 Up, Down, PageUp, PageDown으로 값을 증감합니다.

  • F4 또는 Alt+Down으로 모든 드롭다운을 엽니다
  • Ctrl+Up은 달력을 연과 10년 보기로 축소합니다
  • 스핀 편집기의 Increment와 LargeIncrement
  • 네이티브 편집기가 화면 낭독기 동작을 유지합니다
도움말 항목 읽기
속성 하나로 라이트와 다크

키보드, DPI, 테마

속성 하나로 라이트와 다크

모든 입력이 같은 테마를 따를 때 폼이 완성되어 보입니다. 각 컨트롤에는 Theme, AccentColor, TextStyle이 있고 프레임, 마우스 오버, 눌림 상태, 선택, 비활성 상태의 색상은 여기서 파생되므로 속성 하나로 전체 모양이 바뀝니다. 토큰은 모든 sgcUI 제품이 사용하는 것과 같아서 sgcDashboard 타일이나 sgcToolbar 아래에 둔 편집기도 추가 작업 없이 어울립니다. 비활성 컨트롤은 스스로 배경에 녹아듭니다. 실행 중에 테마를 전환하면 모든 편집기가 다시 그려지므로 다크 모드 설정에 바로 사용할 수 있습니다.

  • Theme: utDefault(기본값, 애플리케이션 테마를 따름), utLight 또는 utDark
  • 선택, 핸들, 채움, 포커스 링을 위한 AccentColor
  • 크기, 굵기, 색상을 위한 TextStyle
  • sgcUI 제품군 전체와 같은 테마 토큰
도움말 항목 읽기

sgcEditors 동작 보기

sgcUI 제품군 데모 속의 sgcEditors: 내장 시뮬레이션 데이터로 오프라인에서 실행되는 완전한 애플리케이션입니다.

sgcEditors로 개발하는 사람들

예약 및 예매 폼

예약 폼에는 휴무일을 지키는 숙박 기간, 인원수, 도착 시간, 그리고 지난 방문에 대한 평점이 필요할 수 있습니다. 월 달력이 MinDate, MaxRangeDays, 비활성 날을 적용하고, 스핀 편집기가 인원을 세며, 시간 선택기가 입력한 시간을 받고, 평점이 피드백을 수집하며, 모두 하나의 테마로 표시됩니다. BookingForm 데모는 실시간 요약과 함께 편집기 7개로 호텔 예약을 구성합니다.

  • 달력 범위
  • 스핀 편집기
  • 평점
BookingForm 데모 실행

TDataSet 데이터 입력

업무 애플리케이션은 하루 종일 레코드를 편집합니다. 데이터 인식 편집기 5종은 DataSource와 DataField로 TDataSet 필드에 바인딩되고, 범위 슬라이더는 양쪽 끝을 바인딩하며, null 필드는 비어 있는 상태로 표시됩니다. 실제 키보드 입력과 유연한 구문 분석이 결합되어 작업자는 값을 빠르게 입력하고 데이터셋은 깨끗한 데이터를 받습니다. DataAware 데모는 편집기 5종을 TDBGrid와 TDBNavigator 옆의 TClientDataSet에 배치합니다.

  • 데이터 인식 편집기
  • 텍스트 입력
  • 키보드
DataAware 데모 실행

국제 일정 관리 앱

여러 나라에서 사용하는 계획 도구는 모든 사용자에게 올바른 주 시작일, 주 번호, 월 이름을 보여 주어야 합니다. 각 컨트롤이 자체 FormatSettings를 가지므로 한 폼에 독일어 달력과 영어 달력을 나란히 둘 수 있으며, FirstDayOfWeek와 WeekNumbering은 로케일 또는 사용자의 규칙을 따릅니다. Calendar 데모는 14일로 제한된 범위와 함께 영어, 독일어, 스페인어, 프랑스어, 이탈리아어 사이를 전환합니다.

  • 현지화
  • 주 번호
  • 비활성 날짜
Calendar 데모 실행

A Feedback Form in a Few Lines

The same API in Delphi, C++ Builder and C#: a rating, a range slider and a token edit, all reporting through OnChange.

uses
  SysUtils, Classes, Controls, Forms, StdCtrls,
  sgcEditors_Types, sgcEditors_VCL_Value, sgcEditors_VCL_Token;

type
  TFeedbackForm = class(TComponent)
  public
    Stars: TsgcVCLRating;
    Budget: TsgcVCLRangeSlider;
    Tags: TsgcVCLTokenEdit;
    Summary: TLabel;
    procedure EditorChange(Sender: TObject);
  end;

procedure TFeedbackForm.EditorChange(Sender: TObject);
begin
  // OnChange fires for every new value: clicked, dragged or typed
  Summary.Caption := Format('%.1f stars, budget %.0f to %.0f, %d tags',
    [Stars.Value, Budget.Value, Budget.EndValue, Tags.Tokens.Count]);
end;

function CreateFeedbackForm(aForm: TForm): TFeedbackForm;
begin
  Result := TFeedbackForm.Create(aForm);
  Result.Stars := TsgcVCLRating.Create(aForm);
  Result.Stars.Parent := aForm;
  Result.Stars.SetBounds(16, 16, 200, 32);
  Result.Stars.Glyph := ergHeart;
  Result.Stars.Precision := erpHalf;
  Result.Stars.Value := 3.5;
  Result.Stars.OnChange := Result.EditorChange;
  Result.Budget := TsgcVCLRangeSlider.Create(aForm);
  Result.Budget.Parent := aForm;
  Result.Budget.SetBounds(16, 60, 320, 48);
  Result.Budget.Max := 500;
  Result.Budget.Step := 10;
  Result.Budget.RangeMode := True;
  Result.Budget.Value := 80;
  Result.Budget.EndValue := 240;
  Result.Budget.ShowLabels := True;
  Result.Budget.OnChange := Result.EditorChange;
  Result.Tags := TsgcVCLTokenEdit.Create(aForm);
  Result.Tags.Parent := aForm;
  Result.Tags.SetBounds(16, 120, 320, 64);
  Result.Tags.TextHint := 'Add a tag';
  Result.Tags.AutoCompleteItems.CommaText := 'Breakfast,Parking,Pool';
  Result.Tags.AddToken('Breakfast');
  Result.Tags.OnChange := Result.EditorChange;
  Result.Summary := TLabel.Create(aForm);
  Result.Summary.Parent := aForm;
  Result.Summary.SetBounds(16, 196, 320, 20);
  Result.EditorChange(nil);
end;
#include <vcl.h>
#include "sgcEditors_Types.hpp"
#include "sgcEditors_VCL_Value.hpp"
#include "sgcEditors_VCL_Token.hpp"

class TFeedbackHandler : public TObject
{
public:
  TsgcVCLRating *Stars;
  TsgcVCLRangeSlider *Budget;
  TsgcVCLTokenEdit *Tags;
  TLabel *Summary;
  void __fastcall EditorChange(TObject *Sender);
};

void __fastcall TFeedbackHandler::EditorChange(TObject *Sender)
{
  // OnChange fires for every new value: clicked, dragged or typed
  Summary->Caption = FormatFloat("0.0", Stars->Value) + " stars, budget " +
    FormatFloat("0", Budget->Value) + " to " + FormatFloat("0", Budget->EndValue) +
    ", " + IntToStr(Tags->Tokens->Count) + " tags";
}

TFeedbackHandler * __fastcall CreateFeedbackForm(TForm *Form)
{
  TFeedbackHandler *H = new TFeedbackHandler();
  H->Stars = new TsgcVCLRating(Form);
  H->Stars->Parent = Form;
  H->Stars->SetBounds(16, 16, 200, 32);
  H->Stars->Glyph = ergHeart;
  H->Stars->Precision = erpHalf;
  H->Stars->Value = 3.5;
  H->Stars->OnChange = H->EditorChange;
  H->Budget = new TsgcVCLRangeSlider(Form);
  H->Budget->Parent = Form;
  H->Budget->SetBounds(16, 60, 320, 48);
  H->Budget->Max = 500;
  H->Budget->Step = 10;
  H->Budget->RangeMode = true;
  H->Budget->Value = 80;
  H->Budget->EndValue = 240;
  H->Budget->ShowLabels = true;
  H->Budget->OnChange = H->EditorChange;
  H->Tags = new TsgcVCLTokenEdit(Form);
  H->Tags->Parent = Form;
  H->Tags->SetBounds(16, 120, 320, 64);
  H->Tags->TextHint = "Add a tag";
  H->Tags->AutoCompleteItems->CommaText = "Breakfast,Parking,Pool";
  H->Tags->AddToken("Breakfast");
  H->Tags->OnChange = H->EditorChange;
  H->Summary = new TLabel(Form);
  H->Summary->Parent = Form;
  H->Summary->SetBounds(16, 196, 320, 20);
  H->EditorChange(NULL);
  return H;
}
using System;
using System.Drawing;
using System.Windows.Forms;
using esegece.sgcUICore;
using esegece.sgcEditors;

public class FeedbackForm : Form
{
    private readonly TsgcWinFormsRating stars;
    private readonly TsgcWinFormsRangeSlider budget;
    private readonly TsgcWinFormsTokenEdit tags;
    private readonly Label summary = new Label { Location = new Point(12, 196), Size = new Size(320, 20) };

    public FeedbackForm()
    {
        ClientSize = new Size(360, 230);
        stars = new TsgcWinFormsRating { Location = new Point(12, 12), Size = new Size(200, 32) };
        stars.Glyph = TsgcEditorRatingGlyph.ergHeart;
        stars.Precision = TsgcEditorRatingPrecision.erpHalf;
        stars.Value = 3.5;

        budget = new TsgcWinFormsRangeSlider { Location = new Point(12, 56), Size = new Size(320, 48) };
        budget.BeginInit();
        budget.Max = 500;
        budget.Step = 10;
        budget.RangeMode = true;
        budget.Value = 80;
        budget.EndValue = 240;
        budget.EndInit();
        budget.ShowLabels = true;

        tags = new TsgcWinFormsTokenEdit { Location = new Point(12, 116), Size = new Size(320, 64) };
        tags.TextHint = "Add a tag";
        foreach (string s in new[] { "Breakfast", "Parking", "Pool" })
            tags.AutoCompleteItems.Add(s);
        tags.Tokens.Add("Breakfast");

        // OnChange fires for every new value: clicked, dragged or typed
        foreach (TsgcWinFormsCustomEditor e in new TsgcWinFormsCustomEditor[] { stars, budget, tags })
        {
            e.OnChange = s => ShowSummary();
            Controls.Add(e);
        }
        Controls.Add(summary);
        ShowSummary();
    }

    private void ShowSummary() =>
        summary.Text = $"{stars.Value:0.0} stars, budget {budget.Value:0} to {budget.EndValue:0}, {tags.Tokens.Count} tags";
}
dotnet add package esegece.sgcEditors.WinForms

sgcEditors 데모 실행하기

Gallery, Calendar, BookingForm, DataAware는 VCL과 C++ Builder용으로, GalleryFMX는 FireMonkey용으로 제공됩니다. .NET 에디션에는 WinForms, WPF, Avalonia용 Gallery와 BookingForm, BindingWpf가 있습니다.

Calendar

Calendar

최대 14일의 범위, 주 번호, 비활성 주말과 공휴일, 영어, 독일어, 스페인어, 프랑스어, 이탈리아어 로케일 전환을 보여 줍니다.

BookingForm

편집기 7개로 만든 호텔 예약이며 숙박 기간, 인원, 도착 시간의 실시간 요약을 제공합니다. 컨트롤이 실제 폼에서 어떻게 함께 동작하는지 보여 줍니다.

DataAware

Registered 에디션 전용 DataAware

TDBGrid와 TDBNavigator가 있는 TClientDataSet 위의 데이터 인식 편집기 5종입니다. 데이터 인식 컨트롤에는 Registered 또는 체험판 에디션이 필요합니다.

GalleryFMX

FireMonkey 편집기로 만든 갤러리이며 Windows와 Android용입니다. VCL 컨트롤과 같은 속성과 이벤트를 가집니다.

컴파일된 데모

sgcUI 제품 전체의 실행 파일을 제공하며, 설치가 필요 없습니다.

sgcUI_bin.zip 다운로드 →

sgcEditors가 포함된 곳

sgcEditors는 모든 sgcUI 에디션에 포함되어 있으며 단독으로도 판매됩니다. 또한 All-Access 번들에도 포함되어 있습니다.

sgcEditors 단일 패키지

€199 / 개발자, 전체 소스 코드, 1년 업데이트.

sgcEditors 구매 → 가격 보기 →

sgcUI Standard

sgcEditors, sgcGrid, sgcNavigation 및 sgcToolbar, €380부터.

Standard 보기 →

sgcUI Professional

Standard에 sgcCharts, sgcDashboard 및 sgcGauges 추가, €529부터.

Professional 보기 →

sgcUI Enterprise

sgcUI 제품 14개 전체, €699부터.

Enterprise 보기 →

무료 Community 에디션(NuGet의 esegece.sgcEditors.Community)에는 컨트롤 9종이 모두 있지만, 색상 선택기에는 HSV 사각형과 알파 막대가 없고, 토큰 편집기에는 자동 완성 목록이 없으며, 범위 슬라이더는 핸들이 하나이고, 데이터 인식 편집기는 없습니다.

기능Community (무료)Registered 에디션
VCL, FireMonkey, .NET용 컨트롤 9종 전체✓✓
네이티브 텍스트 입력, 유연한 구문 분석, 현지화✓✓
달력 범위, 제한, 비활성 날✓✓
키보드, DPI, 테마, 헤드리스 출력✓✓
핸들 두 개의 범위 슬라이더−✓
색상 선택기의 HSV 사각형과 알파 막대−✓
토큰 편집기의 자동 완성 목록−✓
데이터 인식 편집기(Delphi 및 C++ Builder)−✓

지원 프레임워크 및 플랫폼

sgcEditors의 컴포넌트

모든 컨트롤은 VCL, FireMonkey, WinForms, WPF, Avalonia에서 같은 속성과 이벤트로 제공됩니다.

컨트롤VCL 및 C++ BuilderFireMonkey.NET
월 달력TsgcVCLMonthCalendarTsgcFMXMonthCalendarTsgcWinFormsMonthCalendar
날짜 선택기TsgcVCLDatePickerTsgcFMXDatePickerTsgcWinFormsDatePicker
시간 선택기TsgcVCLTimePickerTsgcFMXTimePickerTsgcWinFormsTimePicker
날짜 및 시간 선택기TsgcVCLDateTimePickerTsgcFMXDateTimePickerTsgcWinFormsDateTimePicker
범위 슬라이더TsgcVCLRangeSliderTsgcFMXRangeSliderTsgcWinFormsRangeSlider
색상 선택기TsgcVCLColorPickerTsgcFMXColorPickerTsgcWinFormsColorPicker
토큰 편집기TsgcVCLTokenEditTsgcFMXTokenEditTsgcWinFormsTokenEdit
평점TsgcVCLRatingTsgcFMXRatingTsgcWinFormsRating
스핀 편집기TsgcVCLSpinEditTsgcFMXSpinEditTsgcWinFormsSpinEdit

.NET 열은 WinForms 이름을 보여 주며, 같은 컨트롤이 WPF와 Avalonia에는 TsgcWpf와 TsgcAvalonia 접두사로 존재합니다. 비시각 도우미: TsgcEditorModel, TsgcEditorLocale, TsgcEditorFieldLink. 데이터 인식 편집기(TsgcVCLDBDatePicker, TsgcVCLDBTimePicker, TsgcVCLDBSpinEdit, TsgcVCLDBRating, TsgcVCLDBRangeSlider와 FireMonkey 대응 컨트롤)는 Registered 전용이며 Delphi와 C++ Builder용입니다.

대상컴포넌트플랫폼
Delphi 7부터 13, VCLTsgcVCL 편집기Win32, XE2부터 Win64
Delphi XE6부터 13, FireMonkeyTsgcFMX 편집기Windows, macOS, iOS, Android
C++ Builder 2007부터 13TsgcVCL 및 TsgcFMX 편집기생성된 .hpp 헤더와 정적 라이브러리
Delphi 10.2부터 13, 프레임워크 중립모델과 헤드리스 PNG 및 SVG 출력Linux64 (Linux 컨트롤 없음)
.NET Framework 4.7.2, .NET 8, 9 및 10WinForms, WPF, Avalonia 편집기Windows 데스크톱 및 Avalonia 대상

자주 묻는 질문

네. 모든 텍스트 필드는 플랫폼의 실제 편집기입니다. VCL에서는 테두리 없는 TEdit, FireMonkey에서는 FMX TEdit이므로 일본어, 중국어, 한국어 IME 조합, 클립보드, 실행 취소, 컨텍스트 메뉴, 화면 낭독기가 별도의 코드 없이 동작합니다. 텍스트 입력과 IME를 참조하세요.

네. MinDate와 MaxDate가 한도를 정하고, DisabledDates가 공휴일을 나열하며, DisabledWeekDays가 주말을 막고, OnIsDateDisabled가 그 밖의 모든 규칙을 결정합니다. 비활성 날은 취소선으로 표시되고 키보드로 건너뛰며 선택기에 입력해도 거부됩니다. Calendar 데모는 주말과 공휴일 두 개를 막아 규칙이 동작하는 모습을 보여 줍니다.

Delphi와 C++ Builder에서 다섯 가지입니다. 날짜 선택기, 시간 선택기, 스핀 편집기, 평점, 범위 슬라이더이며 각각 VCL과 FireMonkey 컨트롤로 제공됩니다. Registered 또는 체험판 에디션이 필요합니다. .NET에서는 일반 컨트롤이 WinForms, WPF, Avalonia의 데이터 바인딩으로 두 에디션 모두에서 바인딩됩니다.

컨트롤 9종이 모두 포함되어 있습니다. Community에는 색상 선택기의 HSV 사각형과 알파 막대, 토큰 편집기의 자동 완성 목록, 범위 슬라이더의 두 번째 핸들이 빠져 있습니다. Delphi 데이터 인식 편집기는 Registered 전용입니다. 에디션을 참조하세요.

네. 각 컨트롤이 FormatSettings의 자체 사본을 유지하므로 요일 및 월 이름, 형식, 구분 기호, 한 주의 시작 요일이 컨트롤마다 다를 수 있습니다. Calendar 데모는 실행 중에 영어, 독일어, 스페인어, 프랑스어, 이탈리아어 사이를 전환하며, 다르게 선택하지 않으면 주 번호는 ISO 8601을 따릅니다.

날짜와 시간에 대해서는 그렇습니다. TsgcVCLDatePicker, TsgcVCLTimePicker, TsgcVCLDateTimePicker는 드롭다운 달력 또는 시간 목록이 있는 입력형 편집기입니다. 여기에 더해 월 이름을 유연하게 구문 분석하고, 제한과 비활성 날을 지키며, sgcUI 테마를 따르고, 각 모니터의 DPI로 그려집니다.

네. C++ Builder 2007과 2010부터 13까지는 생성된 헤더와 라이브러리를 통해 같은 VCL 및 FireMonkey 컨트롤을 사용하며, DataAware를 포함한 모든 Delphi 데모가 C++ Builder 프로젝트로도 제공됩니다. 이 페이지의 코드 탭에서 같은 폼을 Delphi, C++ Builder, C#으로 볼 수 있으며 각 샘플은 게시 전에 컴파일되었습니다.

sgcEditors 도움말

3,000+개발자
20+년
761+컴포넌트
30+API 통합
5플랫폼
30일 환불 보장만족하지 않으세요? 구매 후 30일 이내에 전액 환불을 요청하세요. 환불 정책 보기

오늘 sgcEditors 체험하기

sgcUI 체험판에는 sgcEditors와 다른 모든 sgcUI 제품이 포함되어 있습니다.