내 프로젝트에 DataGrid가 있습니다. 크기가 맞지 않아서 scrollBar가 나타납니다. DataGrid는 초기 상태에서 몇 개의 열과 다음 열의 일부 (스크롤 한 후에 표시됨)를 표시합니다.잘린 표시된 열의 너비 가져 오기
어쨌든이 부분의 너비를 알 수 있습니까?
내 프로젝트에 DataGrid가 있습니다. 크기가 맞지 않아서 scrollBar가 나타납니다. DataGrid는 초기 상태에서 몇 개의 열과 다음 열의 일부 (스크롤 한 후에 표시됨)를 표시합니다.잘린 표시된 열의 너비 가져 오기
어쨌든이 부분의 너비를 알 수 있습니까?
좋아, 나는이 문제에 좀 더 깊이 파고 들었다. 일부 클래스를 검색하여 Adobe에서 이러한 그리드 동작 (부분적으로 열 표시)을 구현하는 방법을 살펴 보았습니다. 그래서,이 처리해야하는 사람들을 위해, 필요한 부분은 DataGrid.as 파일, 방법 configureScrollBars
에 .. 사실,이 부분 :
// if the last column is visible and partially offscreen (but it isn't the only
// column) then adjust the column count so we can scroll to see it
if (collectionHasRows && rowCount > 0 && colCount > 1 &&
listItems[0][colCount - 1].x +
visibleColumns[colCount - 1].width > (displayWidth - listContent.x + viewMetrics.left))
colCount--;
else if (colCount > 1 && !collectionHasRows)
{
// the slower computation requires adding up the previous columns
var colX:int = 0;
for (var i:int = 0; i < visibleColumns.length; i++)
{
colX += visibleColumns[i].width;
}
if (colX > (displayWidth - listContent.x + viewMetrics.left))
colCount--;
}
거의 모든 코드입니다, 그 필요 그리드에서 까다로운 구분 된 열을 모두 잡아서 측정하십시오.
부모 개체의 너비를 가져야합니다.
다음 단계의 폭을 얻어야한다,의는 데이터 그리드 애플리케이션에 가정 해 봅시다. (stage.stageWidth를)
당신의 데이터 그리드 응용 프로그램의 특정 X 위치 (또는 다른 상위 개체에있는 경우) 다음 부모 개체의 너비 - DataGrid의 x 값을 가져와야합니다. (stage.stageWidth - dataGrid.x)
답장을 보내 주셔서 감사합니다. 난 이미 자신에 의해 계산 생각 (글쎄, 조금 다른 방식으로 .. dataGridWidth % (visibleColumnsCount * columnWidth) 같은 것을). 이 값을 얻기 위해 미리 정의 된 속성이나 메서드가 있는지 궁금합니다. – Antenka