dbg_text_input 함수 설명
dbg_text_input
함수는 현재 디버그 섹션 내에 텍스트 필드를 생성합니다. 기본적으로 텍스트 입력은 문자열 변수로 참조되는 변수를 수정합니다. 선택적 type
매개변수를 설정하여 데이터 유형을 변경할 수 있습니다. 가능한 값은 다음과 같습니다:
"s"
또는"t"
: 문자열 (type of는 "string"을 반환)"i"
또는"d"
: 정수 (type of는 "int64"를 반환)"f"
,"r"
또는"g"
: 실수 (type of는 "number"를 반환)
텍스트 필드는 정수 및 실수에 대해 16진수 및 2진수 입력도 허용합니다. 예를 들어, 0xcafebabe
또는 0b1010101
과 같은 형식입니다. 이 입력은 주어진 데이터 유형에 맞게 올바른 값으로 변환됩니다.
첫 번째 인수로 배열을 전달할 수도 있으며, 이 경우 함수는 배열의 각 참조에 대해 텍스트 필드를 생성합니다. 참조된 변수가 제공된 유형과 다른 유형의 값을 저장하고 있다면, 텍스트를 변경하면 참조된 변수의 유형도 변경됩니다. Android에서는 텍스트 필드를 편집할 때 화면 키보드가 나타납니다.
문법
dbg_text_input(ref_or_array, [label, type]);
인수 설명
인수 | 유형 | 설명 |
---|---|---|
ref_or_array | Reference or Array | ref_create 를 사용하여 생성된 변수에 대한 참조 또는 참조가 포함된 배열 |
label | String | 텍스트 입력 옆에 표시할 레이블 |
type | String | 참조된 변수에 값을 저장할 유형으로, 한 글자로 표시됩니다: |
- 문자열: "s" 또는 "t" (기본값) |
||
- 정수: "i" 또는 "d" |
||
- 실수: "f" , "r" 또는 "g" |
반환값
N/A
활용 예제
예제 1: 기본 사용법
Create Event
description = "이 설명은 변경할 수 있습니다";
var _ref = ref_create(self, "description");
dbg_text_input(_ref, "여기에 설명을 입력하세요:");
위 코드는 먼저 인스턴스 변수 description
에 텍스트를 할당합니다. 그런 다음 ref_create
를 사용하여 이 변수에 대한 참조를 생성합니다. 마지막으로 dbg_text_input
을 사용하여 텍스트 입력 컨트롤을 생성하고, 이 컨트롤은 변수에 연결됩니다.
예제 2: 사용자 정의 데이터 유형
Create Event
an_integer = 5;
a_real = 0.3583;
a_string = "3289430";
ref_to_count = ref_create(self, "an_integer");
ref_to_some_value = ref_create(self, "a_real");
ref_to_a_string = ref_create(self, "a_string");
dbg_text_input(ref_to_count, "정수", "i");
dbg_text_input(ref_to_some_value, "실수", "f");
dbg_text_input(ref_to_a_string, "문자열", "s");
Draw Event
draw_text(5, 600, $"정수 ({typeof(an_integer)}): {an_integer}");
draw_text(5, 620, $"실수 ({typeof(a_real)}): {a_real}");
draw_text(5, 640, $"문자열 ({typeof(a_string)}): {a_string}");
이 코드 예제는 텍스트 입력 디버그 컨트롤을 사용하여 사용자 정의 데이터 유형을 사용하는 방법을 보여줍니다. 객체의 Create 이벤트에서 몇 개의 변수를 정의하고, 각각에 대해 참조를 생성한 후, dbg_text_input
을 사용하여 이 변수들을 수정할 수 있는 텍스트 입력을 생성합니다. 객체의 Draw 이벤트에서는 각 변수에 대한 설명 텍스트와 값이 표시됩니다. 텍스트 입력에서 변경된 내용은 그려진 텍스트에 반영됩니다.
변수의 첫 번째 유형은 텍스트 입력 컨트롤에서 변경이 이루어지면 즉시 "number"에서 "int64"로 변경됩니다.