부서를 나열하는 하위 메뉴가 있습니다. 이 뒤에는 각 부서에 'actPlan'+ department.name이라는 이름의 작업이 있습니다.문자열을 wash/validate하여 componentname에 할당하는 방법은 무엇입니까?
이제 이름이 세계의 이상한 문자를 포함 할 수 있지만 action.name에는 국제 문자가 포함될 수 없기 때문에 이것은 나쁜 생각이라는 것을 알고 있습니다. 분명히 Delphi IDE 자체는 문자열이 유효한 componentname인지 확인하는 몇 가지 메서드를 호출합니다. 누구든지 이것에 대해 더 알고 있습니까?
내가 대신
Action.name := 'actPlan' + department.departmentID;
를 사용하는 아이디어를 가지고있다. 장점은 departmentID가 알려진 형식 인 'xxxxx-x'(여기서 x는 1 ~ 9)이므로 '-'를 예를 들어 밑줄로 바꾸면됩니다. 여기서 문제는 이러한 이전 액션 이름이 이미 개인 텍스트 파일에 유지된다는 것입니다. 갑자기 부서 이름을 ID에서 ID로 변경하면 예외가됩니다.
물론 예외를 처음으로 먹은 다음 해당 텍스트 파일을 검색하여 올바른 데이터로 바꾸고 다시로드하는 메서드를 호출 할 수 있습니다.
그래서 기본적으로 가장 우아하고 미래 지향적 인 방법으로이 문제를 해결합니다. 저는 D2007을 사용합니다.
루틴이 올바르게 작동하지 않으면 첫 번째 문자의 숫자를 사용할 수 있습니다. – mghie
고마워, 나는 결코 눈치 채지 못했다. 베로 코더가 할 수있는 것처럼 루틴을 사용하면 문제가되지 않습니다. 따라서 이름을 바꾸거나 구현을 조정할지 여부를 결정해야합니다. –
이름을 변경하면 유효한 구성 요소 이름이 만들어지지 않습니다. Object Inspector에서 시도하십시오. 예를 들어 "42"는 유효한 이름이 아닙니다. – mghie